且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Linux下如何拷贝整个目录下的所有文件

更新时间:2022-08-23 12:11:31

 

分类: Linux使用
如何在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 选项可以复制隐藏文件。