一、mkdir命令(创建目录)
- -m 创建文件时指定该文件的权限
- 创建默认权限目录
[root@VM_0_3_centos huan]# mkdir d1
- 创建指定权限目录
[root@VM_0_3_centos huan]# mkdir d2 -m 777
- 查看目录详细信息,注意权限变化
[root@VM_0_3_centos huan]# ll total 8 drwxr-xr-x 2 root root 4096 Nov 3 10:00 d1 drwxrwxrwx 2 root root 4096 Nov 3 10:00 d2
- 创建默认权限目录
- -p 若要创建的文件已存在,则不进行任何操作,也不提示(不加这个参数创建重复文件会有提示)
- 创建一个已经存在的目录,不加参数 p
[root@VM_0_3_centos huan]# mkdir d2 mkdir: cannot create directory ‘d2’: File exists
- 创建一个已经存在的目录,加参数 p
[root@VM_0_3_centos huan]# mkdir d2 -p [root@VM_0_3_centos huan]#
TIP:注意不管加不加参数,文件并不会被覆盖
- 创建一个已经存在的目录,不加参数 p
- -v 打印操作日志
- 创建一个已经存在的目录,不加参数 v
[root@VM_0_3_centos huan]# mkdir d3 d4 [root@VM_0_3_centos huan]#
- 创建一个已经存在的目录,加参数 v
[root@VM_0_3_centos huan]# mkdir d3 d4 -v mkdir: created directory ‘d3’ mkdir: created directory ‘d4’
- 创建一个已经存在的目录,不加参数 v
二、rm命令(删除目录/文件)
- -r 删除指定目录下所有的文件
- -f 删除文件时忽略对不存在的文件的提示
- -i 每次删除文件时都提示
[root@VM_0_3_centos huan]# rm -ri d4 rm: descend into directory ‘d4’? y rm: descend into directory ‘d4/f1’? y rm: descend into directory ‘d4/f1/f1’? y rm: remove directory ‘d4/f1/f1/f1’? y rm: remove directory ‘d4/f1/f1/f2’? y rm: remove directory ‘d4/f1/f1’? y rm: remove directory ‘d4/f1/f3’? y rm: remove directory ‘d4/f1/f2’? y rm: remove directory ‘d4/f1’? y rm: descend into directory ‘d4/d1’? y rm: descend into directory ‘d4/d1/d1’? y rm: remove directory ‘d4/d1/d1/d1’? y rm: remove directory ‘d4/d1/d1’? y rm: remove directory ‘d4/d1’? y rm: remove directory ‘d4/f3’? y rm: remove directory ‘d4/f2’? y rm: remove directory ‘d4’? y
TIP:加上‘i’时别加‘f’参数,否则不会进行提示
- -I 在移除三个以上文件之前或递归移除时提示一次
[root@VM_0_3_centos huan]# rm -Ir d4 rm: remove 1 argument recursively? y
TIP:加上‘I’时别加‘f’参数,否则不会进行提示
- -d 只删除空目录
- 创建一个已经存在的目录,不加参数 f
[root@VM_0_3_centos huan]# rm -d d3 rm: cannot remove ‘d3’: Directory not empty
- 创建一个已经存在的目录,加参数 f
[root@VM_0_3_centos huan]# rm: cannot remove ‘d3’: Directory not empty
TIP:可加‘f’参数,会进行提示
- 创建一个已经存在的目录,不加参数 f
- -v 打印操作日志
- 创建一个已经存在的目录,不加参数 v
[root@VM_0_3_centos huan]# rm -rf d4 [root@VM_0_3_centos huan]#
- 创建一个已经存在的目录,加参数 v
[root@VM_0_3_centos huan]# rm -rfv d4 removed directory: ‘d4/f1/f1/f1’ removed directory: ‘d4/f1/f1’ removed directory: ‘d4/f1/f3’ removed directory: ‘d4/f1/f2’ removed directory: ‘d4/f1’ removed directory: ‘d4/f3’ removed directory: ‘d4/f2’ removed directory: ‘d4’
- 创建一个已经存在的目录,不加参数 v
三、mv命令(移动文件 | 重命名)
- -b 若目标位置已有同名文件,则自动备份再覆盖(默认是在名称后面加‘~’)
[root@VM_0_3_centos huan]# mv -bfv d2 mv: missing destination file operand after ‘d2’ Try 'mv --help' for more information. [root@VM_0_3_centos huan]# mv -bfv d1 d2 ‘d1’ -> ‘d2/d1’ (backup: ‘d2/d1~’) [root@VM_0_3_centos huan]# ll d2 total 8 drwxr-xr-x 2 root root 4096 Nov 3 12:00 d1 drwxr-xr-x 2 root root 4096 Nov 3 11:59 d1~ [root@VM_0_3_centos huan]#
- -f 若目标位置已有同名文件,强制覆盖,不进行提示
[root@VM_0_3_centos huan]# mv d1 d2/d1 -f [root@VM_0_3_centos huan]# ll d2 total 4 drwxr-xr-x 2 root root 4096 Nov 3 11:28 d1 -rw-r--r-- 1 root root 0 Nov 3 11:32 f1
- -i 若目标位置已有同名文件,在覆盖之前进行提示
[root@VM_0_3_centos huan]# mv d1 d2 -i mv: overwrite ‘d2/d1’? n [root@VM_0_3_centos huan]# ll total 12 drwxr-xr-x 3 root root 4096 Nov 3 11:39 d1 drwxr-xr-x 3 root root 4096 Nov 3 11:41 d2 drwxr-xr-x 2 root root 4096 Nov 3 11:46 f1
- -n 若目标位置已有同名文件,不会进行覆盖操作
[root@VM_0_3_centos huan]# mv d1 d2 -n [root@VM_0_3_centos huan]# ll total 12 drwxr-xr-x 3 root root 4096 Nov 3 11:39 d1 drwxr-xr-x 3 root root 4096 Nov 3 11:41 d2 drwxr-xr-x 2 root root 4096 Nov 3 11:46 f1
- -S 当文件存在的时候,不进行覆盖操作,指定新文件的名称后缀(默认是’~’)
[root@VM_0_3_centos huan]# mkdir d1 [root@VM_0_3_centos huan]# mv -bfv d1 d2 -S ff ‘d1’ -> ‘d2/d1’ (backup: ‘d2/d1ff’) [root@VM_0_3_centos huan]# ll d2 total 12 drwxr-xr-x 2 root root 4096 Nov 3 12:04 d1 drwxr-xr-x 2 root root 4096 Nov 3 11:59 d1~ drwxr-xr-x 2 root root 4096 Nov 3 12:00 d1ff
- -t 先指定目标地址(默认先指定目标源), 再指定源文件
[root@VM_0_3_centos huan]# mv -t d2 d1 mv: overwrite ‘d2/d1’? n [root@VM_0_3_centos huan]# ll total 12 drwxr-xr-x 3 root root 4096 Nov 3 11:39 d1 drwxr-xr-x 3 root root 4096 Nov 3 11:41 d2 drwxr-xr-x 2 root root 4096 Nov 3 11:46 f1
- -T 把目标文件当成一个正常的文件
- -u 只有源文件比目标文件新或者目标文件不存在时才移动或覆盖文件
[root@VM_0_3_centos huan]# ll
total 4
drwxr-xr-x 3 root root 4096 Nov 3 12:24 d1
-rw-r--r-- 1 root root 0 Nov 3 12:25 f1
-rw-r--r-- 1 root root 0 Nov 3 12:26 f2
[root@VM_0_3_centos huan]# mv -u f1 f2
[root@VM_0_3_centos huan]# ll
total 4
drwxr-xr-x 3 root root 4096 Nov 3 12:24 d1
-rw-r--r-- 1 root root 0 Nov 3 12:25 f1
-rw-r--r-- 1 root root 0 Nov 3 12:26 f2
- -v 打印移动日志
[root@VM_0_3_centos huan]# mv f1 d1 -v ‘f1’ -> ‘d1/f1’
四、cp命令(复制操作)
- -a 在保留原文件属性的前提下复制文件
- -b 若目标位置已有同名文件,则自动备份再覆盖(默认是在名称后面加‘~’)
[root@VM_0_3_centos huan]# cp f1 f2 -b cp: overwrite ‘f2’? y [root@VM_0_3_centos huan]# ll total 4 drwxr-xr-x 3 root root 4096 Nov 3 12:24 d1 -rw-r--r-- 1 root root 0 Nov 3 12:25 f1 -rw-r--r-- 1 root root 0 Nov 3 12:39 f2 -rw-r--r-- 1 root root 0 Nov 3 12:26 f2~
- -f 若目标文件存在且处于不可读状态,则先将其删除然后再尝试复制,会忽略-n指令
- -i 若目标位置已有同名文件,在覆盖之前进行提示
- -n 若目标位置已有同名文件,不会进行覆盖操作
[root@VM_0_3_centos huan]# cp f1 f3 -n [root@VM_0_3_centos huan]# ll total 0 -rw-r--r-- 2 root root 0 Nov 3 12:25 f1 -rw-r--r-- 1 root root 0 Nov 3 12:39 f2 -rw-r--r-- 1 root root 0 Nov 3 12:47 f3 -rw-r--r-- 2 root root 0 Nov 3 12:25 f3copy
- -R 遍历所有文件,在复制目录时候用
- -r 遍历所有文件,在复制目录时候用
- -s 对源文件建立符号链接,而非复制文件
- -S 当文件存在的时候,不进行覆盖操作,指定新文件的名称后缀(默认是’~’)
[root@VM_0_3_centos huan]# cp f1 f3 -S copy cp: overwrite ‘f3’? y [root@VM_0_3_centos huan]# ll total 0 -rw-r--r-- 2 root root 0 Nov 3 12:25 f1 -rw-r--r-- 1 root root 0 Nov 3 12:39 f2 -rw-r--r-- 1 root root 0 Nov 3 12:47 f3 -rw-r--r-- 2 root root 0 Nov 3 12:25 f3copy
- -t 先指定目标地址(默认先指定目标源), 再指定源文件
[root@VM_0_3_centos huan]# cp -t f3 f1 cp: target ‘f3’ is not a directory
- -T 把目标文件当成一个正常的文件
- -u 只有源文件比目标文件新或者目标文件不存在时才移动或覆盖文件
- -v 打印复制日志
- -Z 将指定的文本内容变为安全的内容