Chinaunix
标题:
复制文件夹时忽略某种文件
[打印本页]
作者:
饺子必须死
时间:
2014-09-26 15:07
标题:
复制文件夹时忽略某种文件
我想实现复制文件夹的功能,但是复制的时候想忽略.tmp和.cmd后缀的文件,想请问一下,怎么在复制的时候忽略而不是在之后删除呢?
作者:
Kasiotao
时间:
2014-09-26 15:27
一个笨办法,建一个你的目的文件夹
ls yourdir | awk -F\. '$2!="tmp"&&$2!="cmd"{print "cp "$0"./"}' | sh
作者:
Shell_HAT
时间:
2014-09-26 15:30
rsync支持exclude
作者:
饺子必须死
时间:
2014-09-26 15:34
回复
3#
Shell_HAT
你说的这个我在网上也搜到了,我只是想写个简单bash脚本就行了。
作者:
饺子必须死
时间:
2014-09-26 15:36
回复
2#
Kasiotao
我新手,所以不是太懂。我研究一下,谢谢你啊
作者:
blackold
时间:
2014-09-26 15:36
回复
4#
饺子必须死
rsync一条命令就行了,还不简单?
用 find 也行。
作者:
饺子必须死
时间:
2014-09-26 15:41
回复
6#
blackold
自己真是新手,所以只看到了一些简单的操作命令,这个真不是太熟悉。{:3_186:}
作者:
yestreenstars
时间:
2014-09-26 15:44
find ! -name '*.tmp' -a ! -name '*.cmd'
复制代码
作者:
饺子必须死
时间:
2014-09-26 15:45
回复
8#
yestreenstars
谢谢,我试一下
作者:
饺子必须死
时间:
2014-09-26 16:11
回复
8#
yestreenstars
我想问一下,我复制的源地址文件夹和目的地址由外部传入,也就是运行这个bash之后,暂停,弹出框依次输入源地址和目的地址,接着就是复制了。也就是外部传入参数。
作者:
yestreenstars
时间:
2014-09-26 16:14
回复
10#
饺子必须死
{:3_186:}
作者:
饺子必须死
时间:
2014-09-26 16:16
回复
11#
yestreenstars
还请赐教
作者:
expert1
时间:
2014-09-26 16:17
rsync exclude
作者:
bulletmarquis
时间:
2014-09-26 16:35
回复
10#
饺子必须死
没看懂,这有什么关系么?
在shell里面,用read把两个地址写到变量里面,然后再用find|xargs进行复制就行了
作者:
饺子必须死
时间:
2014-09-26 16:49
回复
14#
bulletmarquis
因为之前在windows下写shell的。现在bash可能表达的意思不是太清楚。就是外部依次传入地址参数,然后进行复制
作者:
bulletmarquis
时间:
2014-09-26 16:55
回复
15#
饺子必须死
就是想从标准输入读入两个变量么?
test()
{
echo "input paramA:"
read a
echo "input paramB:"
read b
echo "paramA="$a"; paramB="$b
}
test
input paramA:
abc
input paramB:
123
paramA=abc; paramB=123
复制代码
作者:
饺子必须死
时间:
2014-09-26 17:04
回复
16#
bulletmarquis
这样如果可以把地址作为变量引进来。到cp那一步,应该怎么处理呢?我写的是这样的一句复制代码(源路径和目的路径你应该能看出来):cp -rfa /home/lsx/invocation/* /home/lsx/sniper
作者:
bulletmarquis
时间:
2014-09-26 17:19
回复
17#
饺子必须死
cp -rfa ${paramA}/* ${paramB}
复制代码
作者:
饺子必须死
时间:
2014-09-26 17:22
回复
18#
bulletmarquis
好的,我试试
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2