您的位置:首页 > 运维架构 > Linux

Linux下拷贝整个目录下的所有文件解决方案

2016-04-22 21:40 399 查看
如何在Linux下拷贝一个目录呢?这好像是再如意不过的问题了。
比如要把/home/usera拷贝到/mnt/temp,我首先想到的就是

cp -R /home/usera/* /mnt/temp

但是这样有一个问题,/home/usera下的隐藏文件都不会被拷贝,子目录下的隐藏文件倒是会的。

那如何才是正确的方法呢?有人说用-a选项,有人说用find加管道。
其实没这么复杂,Google了之后,学了一招。原来只有用“.”当前目录代替“*”就好了。

cp -R /home/usera/. /mnt/temp

### update 2013/06/11
那如果`/mnt/temp`里面已经有文件了,你只想把`/home/usera/`下的新文件copy过来,却不想覆盖`/mnt/temp`里面已有的文件怎么办呢?有点像合并两个目录对吧。

对付这种情况`cp`有一个选项`-n, –no-clobber`,就是不覆盖已有文件。应该也是蛮有用的。

From: http://www.leonzhang.com/2010/02/03/how_to_copy_folder_in_linux/

注:使用 -a 选项可以复制隐藏文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: