![如何运行“find -exec {}\;](https://linux22.com/image/30361/%E5%A6%82%E4%BD%95%E8%BF%90%E8%A1%8C%E2%80%9Cfind%20-exec%20%7B%7D%5C%3B.png)
我有一个可以更改文件夹文件属性的脚本。
这是示例树:
dir 1
--file 1
--file 2
--file 3
dir 2
--file 1
--file 2
dir 3
--file 1
--file 2
--file 3
我正在终端上运行此命令,我想为每个目录运行 shell 脚本 (script.sh)
find . -type d -exec ./script.sh {}\;
它不运行并出现错误:
find: missing argument to `-exec'
我在这里缺少什么?
答案1
{}
您缺少和之间的空格;
:
find . -type d -exec ./script.sh {} \;
答案2
尝试
find . -type d -exec /path/to/script.sh '{}' \;
或者
find . -type d -exec /path/to/script.sh \{\} \;
或者(我相信它也会起作用,因为“}”在这种情况下毫无疑问并不特殊,因此是字面意思):
find . -type d -exec /path/to/script.sh \{} \;