我正在尝试构造一个find命令,以使用两个不同的可执行文件来处理目录中的一堆文件。不幸的是,-exec
find不允许使用管道,甚至\|
因为外壳程序首先解释了该字符。
具体来说,这是我要尝试执行的操作(此操作不起作用,因为管道结束了find命令):
find /path/to/jpgs -type f -exec jhead -v {} | grep 123 \; -print
Answers:
试试这个
find /path/to/jpgs -type f -exec sh -c 'jhead -v {} | grep 123' \; -print
或者,您可以尝试将exec语句嵌入sh脚本中,然后执行以下操作:
find -exec some_script {} \;