linux下复制当前目录下面文件到目录b的话:
cp -rf * b这样子只能复制非隐藏文件和目录。
cp -rf .* b因为.*包含了.和..,这样子复制会出问题,当前目录的上一层目录都可能被复制过去。
这里可以借助ls -A命令,来过滤.和..目录并且包含其他隐藏文件和目录,命令如下:
cp -rf `ls -A1 --color=never` b
-1选项,让ls一行只显示一个文件或目录名,仅是为看着舒服,这里加不加都不影响。
如果已经将非隐藏的文件或目录复制过去了,仅想复制隐藏的文件和目录,有两种方式:
- 一般可以给cp加上-u参数,这个参数只会复制目标目录下不存在的文件,
或者目标目录下存在,但当前目录下更新的文件。
即:
cp -urf `ls -A1 --color=never` b
- 可以用`ls -d .[^.]* --color=never`来得到当前目录下隐藏文件和目录,-d不展开目录显示,.[^.]*匹配当前目录下以.开头的文件和目录。
即:
cp -rf `ls -d .[^.]* --color=never` b
本文介绍在Linux环境下使用cp命令复制当前目录下文件至指定目录的方法,包括基本复制、排除隐藏文件、仅复制隐藏文件、以及复制过程中避免误操作的技巧。

2799

被折叠的 条评论
为什么被折叠?



