任何人有在bash比發現和複製文件的另一種方法:擊:找到並複製
find . -ctime -15 | awk '{print "cp " $1 " ../otherfolder/"}' | sh
我喜歡這種方式,因爲它是靈活的,因爲我建立我的命令(可通過任何命令),然後執行它。
是否有其他方法可以簡化命令到文件列表?
感謝
任何人有在bash比發現和複製文件的另一種方法:擊:找到並複製
find . -ctime -15 | awk '{print "cp " $1 " ../otherfolder/"}' | sh
我喜歡這種方式,因爲它是靈活的,因爲我建立我的命令(可通過任何命令),然後執行它。
是否有其他方法可以簡化命令到文件列表?
感謝
我通常使用這一個:
find . -ctime -15 -exec cp {} ../otherfolder/ \;
-exec很可能要走的路,除非你有太多的文件。然後使用xargs。
你可以用xargs
做到這一點:
$ find . -ctime 15 -print0 | xargs -0 -I{} cp {} ../otherfolder
這比'find -exec'更快,因爲它不會爲每個文件創建一個新的'cp'過程。但是,如果你有GNU find,你可以執行'find -exec ... +'而不是'find -exec ...';''獲得相同的效果:) – hobbs 2009-10-14 07:18:54
如果您cp
是GNU的:
使用此用於複製和許多其他的事情:
for f in (find /apps -type f -name 'foo'); do cp ${f} ${f}.bak; cmd2; cmd3; done;
類似的Q&A 1 + 1/2年後:http://stackoverflow.com/ q/5241625/1172302 – 2012-08-15 04:27:54