介绍命令之前先介绍一下Tab键在Linux下有什么特殊的用法吧!
4、Tab键的作用
自动补全文件名
- 当敲的文件名没有重名时,按一下Tab键,系统就自动补全文件名
- 当敲的文件有重名时,按两下Tab键,就是将所有的可能的文件都列出来供选择
5、mkdir : 创建新目录
mkdir—make directory
语法:mkdir [-mp] 目录名称
选项与参数:
- -m : 配置文件的权限
- -p : 递归创建所有目录,包括不存在的上一级目录
#在tmp目录下递归创建test/tt目录
[root@admin /]# mkdir -p /tmp/test/tt
#创建权限为rwx-wxr--的目录
[root@admin /]# mkdir -m 734 test2
#可以一次创建多个目录
[root@admin /]# mkdir test1 test2 test3 ....
6、cp :复制文件或目录(危险,谨慎使用)
语法:(注:隐藏文件无法拷出)
- cp [-adfilprsu] source destination
- cp [options] source1 source2 source3 …. directory
选项与参数:
- -i : 交互模式,当目标已经存在时,在覆盖时会先询问动作是否继续进行
- -r : 递归拷贝,常用于目录复制行为
- -p : 连同文件的属性一起复制过去,包括读写属性、拥有者属性(因为如果用root用户拷贝的话,默认权限就变成root权限,不是文件原有的权限了)
- -u : 若destination比source旧才升级destination,通过修改时间判断的新旧
cp命令不仅具有拷贝文件的功能,还可以拷贝文件后顺便更改文件名。
#将t1目录下的a.txt直接拷贝到t2目录下,不更改文件的名字
[root@admin home]# cp t1/a.txt t2/
#将t1目录下的a.txt直接拷贝到t2目录下,并将文件名更改为c.txt
[root@admin home]# cp t1/a.txt t2/c.txt
#将t1目录递归的拷贝到t3目录下,当t3不存在时,自动会创建t3目录
[root@admin home]# cp -r t1 t3
使用cp(其实系统默认就给了一个-i参数)或者是cp -i来拷贝已存在的文件时,系统会询问是否覆盖,此时可以使用/bin/cp(即不带-i参数) 来强制拷贝,不会提示是否覆盖操作,但这很危险,除非我们很清楚我们就是要覆盖这文件,否则不要这么使用。 如:
[root@admin home]# /bin/cp t1/* t3/
使用cp拷贝目录时,有时会出现意想不到的结果,比如存在bir1/aa.txt bir2(空的),bir3/cc.txt
[root@admin home]# cp -r bir1 bir2
上面的拷贝没有任何提示,执行成功了。其实结果是将bir1放到了bir2目录下。所以建议,在拷贝目录时,把目录符号都带上,保证操作是在你的意料之中的。当再次执行这个操作时,就会提示是否覆盖,但是这种覆盖提示只是针对目录下的存在有重名的文件时才提示是否覆盖。如果有多个文件,就会多次提示覆盖。但是如果目录下不存在同名文件或者是目录为空时,就不会提示覆盖,直接将目录拷贝到目标目录下。
将目录bir1下所有的文件拷贝到bir2中
[root@admin home]# cp -r bir1/* bir2/
说明:
- 当准备修改重要的文件时,可以使用该命令先备份一份并改名,然后再对原文件进行更改操作,防止原文件丢失。
- cp的覆盖是同名覆盖的,即在目标文件目录中,有同名的文件就覆盖,没有同名的时,就将要拷贝的文件放进去,但是目录中之前不同命的文件还是存在的不会消失。