我想复制所有子目录中存在脚本文件的文件
我试过这个命令
find . -type f -regex '.*.sh' -exec echo cp myfile.txt {} \;
输出
cp myfile.txt ./b/e/e.sh
cp myfile.txt ./a/a.sh
cp myfile.txt ./c/f/f.sh
cp myfile.txt ./c/c.sh
我希望输出为
cp myfile.txt ./b/e
cp myfile.txt ./a
cp myfile.txt ./c/f
cp myfile.txt ./c
如何更改find命令的输出以实现此目的?
由于
答案 0 :(得分:1)
也许不是最优雅的方式,但是:
.... -exec bash -c 'cp myfile.txt $(dirname {})' \;
这是另一个:
find . -regex '.*.sh' -exec dirname {} \; | xargs -n 1 cp myfile.txt