r ...但省略(排除)指定的子目录

这是目录结构:

/a/
/a/b/
/a/c/

我想复制所有内容,除了/ a / c /子目录外。

scp -rp myserver:/a .      # this will copy everything

问:我如何指定一个在scp命令中省略的目录?


我不认为你可以,但你可以使用rsync? 像这样的东西:

rsync -a --exclude=a/c myserver:/a .

我认为这可能是正确的做法,所以你仍然使用SSH,我还没有找到一种方法来使用scp - 但是使用rsync over ssh可以解决它。

rsync -e 'ssh -ax' -av --exclude /a/c myserver:/a .

如果您使用-n开关,则会创建该进程的空运行:

 rsync -e 'ssh -ax' -av --exclude /a/c -n myserver:/a .

您可以使用如下例所示的扩展匹配:

#Enable extglob
shopt -s extglob

cp -rv !(./excludeme/*.jpg) /var/destination
链接地址: http://www.djcxy.com/p/78139.html

上一篇: r ... but leave out (exclude) a specified subdirectory

下一篇: Using Makefile to clean subdirectories