cp
-p 保持原有属主(不加p谁复制属于谁的组)
-a 保留所有属性 比p大
-i 提示是否覆盖
-f 强制覆盖
-r 复制目录时必须添加 cp -r old/ new/ 那就会把old目录整个拷贝到new目录下。
cp /etc/{passwd,inittab,rc.d/rc.sysinit} /tmp/ 复制三个文件
-p参数,可以保持权限、宿主、时间栈,还可能包括link等;还有更简单的,就是用:
-a参数,就等于-dpR
[root@localhost aa]# cp b/* aa/ #不会拷贝b文件夹下的隐藏文件到aa *不会拷贝隐藏文件 要用 .
[root@localhost bb]# cp -a b/. bb/ #将会拷贝b下的包括隐藏文件的所有文件到bb下
上面提到不要写成.*,那.*代表什么? rm和cp、find命令都要注意 find . 查找当前目录下所有文件包括隐藏 find * 查找当前目录所有不隐藏的文件 find .*查找当前目录所有文件和上一级目录的所有文件和文件夹 以及文件夹下的所有文件
[root@localhost b]# find .* -name c* -exec rm -rf {} \; 会删除当前目录下、上级目录和目录下的所有c*文件 这个是很危险的
[root@localhost a]# ls .*
.:
a
..:
a anaconda-ks.cfg a.py
.*代表的是当前目录,以及上一层目录。 .是当前目录的文件 a ..是当前目录上一级目录的文件 a a.py等 不会ls出上一级文件夹下的文件 而find .*会
cp c/.* d 就会把c当前的所有文件和c上一级的文件全部拷贝到d中
rm -rf .* 这个是删除当前目录下的隐藏文件 不会删除上一级的隐藏文件
rm -rf * 删除当前目录除了隐藏文件的文件
要删除所有文件包括隐藏文件怎么写呢
rm -rf * .[^.]*
或者 rm -rf * .*