第四章(一) 操作文件和目录

5个常用的用于操作文件和目录Linux命令。

  • mkdir:创建目录。
  • cp:复制目录。
  • mv:移动和重命名文件和目录。
  • rm:删除文件和目录。
  • ln:创建硬链接和符号链接。

使用命令比图形化界面可以执行更丰富的功能。

4.1 通配符wildcard

Shell要用到大量文件名,通过通配符来快速指定一组文件名。

通配符及其含义
通配符含义
*匹配任意多个字符
匹配任意单个字符
[characters]匹配属于字符集合character中的任意单个字符
[!characters]匹配不属于字符集合character中的任意单个字符
[[:class:]]匹配属于字符类class中的任意单个字符

常用的字符类
字符类含义
[:alnum:]匹配任意单个字母数字(alphanumeric)字符
[:alpha;]匹配任意单个字母
[:digit:]匹配任意单个数字
[:lower:]匹配任意单个小写字母
[:upper:]匹配任意单个大写字母

利用通配符可以构建出复杂的文件名匹配条件。

通配符示例
模式匹配
*所有文件(但不能匹配隐藏文件).[!.]*
g*以g开头的任意文件
b*.txt以b开头,扩展名为.txt的文件
Data???以Data开头并紧接3个字符的文件
[abc]*以a、b、c、中任意字符开头的文件
BACKUP.[0-9][0-9][0-9]以BACKUP.开头并紧接3个数字的文件
[[:upper:]]*以单个大写字母开头的文件
[![:digit:]]*不以数字开头的文件
*[[:lower:]123]以小写字母或1、2、3中任意数字结尾的文件

查看/usr/bin 目录中所有以小写字母开头u开头的文件。

[root@iZ2zedyc2xu831hpw85bmhZ /]# cd /usr/bin
[root@iZ2zedyc2xu831hpw85bmhZ bin]# ls -l u*
-rwxr-xr-x  1 root root 447096 Dec 22  2021 udevadm
-rwxr-xr-x. 1 root root  62376 May  3  2021 udisksctl
-rwxr-xr-x. 1 root root  21080 Jul 21  2021 ul
-rwxr-xr-x. 1 root root     30 Jul 27  2021 ulimit
-rwxr-xr-x. 1 root root     29 Jul 27  2021 umask
-rwsr-xr-x. 1 root root  33544 Jul 21  2021 umount
-rwxr-xr-x. 1 root root     31 Jul 27  2021 unalias
-rwxr-xr-x. 1 root root  38216 Jul 14  2021 uname
lrwxrwxrwx. 1 root root      7 Jul 21  2021 uname26 -> setarch
-rwxr-xr-x. 1 root root  46672 Jul 14  2021 unexpand
-rwxr-xr-x. 1 root root   2613 Jul 21  2020 unicode_start
-rwxr-xr-x. 1 root root    363 Jul 21  2020 unicode_stop
-rwxr-xr-x. 1 root root  50808 Jul 14  2021 uniq
-rwxr-xr-x. 1 root root  59936 May 11  2019 unix2dos
lrwxrwxrwx. 1 root root      8 May 11  2019 unix2mac -> unix2dos
-rwxr-xr-x. 1 root root  34112 Jul 14  2021 unlink
-rwxr-xr-x. 2 root root 125176 Apr  7  2020 unpigz
-rwxr-xr-x. 1 root root  25528 Jul 21  2021 unshare
lrwxrwxrwx. 1 root root     24 Apr 28 18:05 unversioned-python -> /etc/alternatives/python
lrwxrwxrwx. 1 root root      2 May 11  2019 unxz -> xz
-rwxr-xr-x. 2 root root 206696 Jun 30  2021 unzip
-rwxr-xr-x. 1 root root 103864 Jun 30  2021 unzipsfx
-rwxr-xr-x. 1 root root   1268 Sep 22  2021 update-ca-trust
-rwxr-xr-x. 1 root root     87 Jun 17  2021 update-crypto-policies
-rwxr-xr-x. 1 root root  55128 May 11  2019 updatedb
-rwxr-xr-x. 1 root root  26168 May 14  2019 update-desktop-database
-rwxr-xr-x. 1 root root  55216 May 11  2019 update-mime-database
-rwxr-xr-x. 1 root root  12976 Feb  2  2021 uptime
-rwxr-xr-x. 1 root root   4102 May 15  2018 usb-devices
-rwxr-xr-x. 1 root root  31784 May 11  2019 usbhid-dump
-rwxr-xr-x. 1 root root  38264 Jul 14  2021 users
-rwxr-xr-x. 1 root root  12120 Feb 19  2021 usleep
-rwxr-xr-x. 1 root root  29352 Jul 21  2021 utmpdump
-rwxr-xr-x. 1 root root  16704 Jul 21  2021 uuidgen
-rwxr-xr-x. 1 root root  38032 Jul 21  2021 uuidparse

4.2 mkdir ---创建目录

mkdir directory...

三个点代表参数可重复

创建单个目录和创建三个目录

mkdir dir1
mkdir dir1 dir2 dir3

4.3 cp --- 复制文件和目录

将单个或多个文件或目录item1复制到文件或目录item2:

cp item... directory
cp命令常用选项
选项含义
-a,-archive复制文件和目录及其包括所有权和权限在内的所有属性。在通常情况下,副本采用执行复制操作的用户的默认属性。
-i,--interactive在覆盖已有文件之前,提示用户确认。如未指定该选项,cp命令会悄无声息的覆盖文件。(无警告)
-r,--recursive递归复制目录及其内容。在复制目录时,要用到该选项(或者-a选项)
-u,--update在将文件从一个目录复制到目标目录时,只复制目标目录中不存在或比目标目录中现有文件更新的文件。该选项在复制大批量文件时很实用,因为它能够跳过哪些不必复制的文件。
-v,--verbose在进行复制时显示相关信息。

cp命令示例
命令结果
cp file1 file2将文件file1 复制为文件 file2.如果文件 file2 存在,使用文件file1的内容将其覆盖。如果文件file2 不存在,则创建文件file2
cp -i file1 file2和前一个命令一样,除了当前文件file2存在时,在覆盖之前会提示用户。
cp file1 file2 dir1将文件file1和文件file2复制到目录dir1.该目录必须事先存在。
cp dir1/* dir2使用通配符,将目录dir1中的所有文件复制到目录dir2中。目录dir2必须事先存在
cp -r dir1 dir2将目录dir1的内容复制到目录dir2。如果目录dir2不存在,则会先创建该目录,再复制目录dir1的内容。如果目录dir2已存在,目录dir1及其内容会被复制到目录dir2

4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值