【发布时间】:2013-08-15 00:44:16
【问题描述】:
我想做类似的事情
find ./ -type f | parallel --gnu convert "{}" "$(basename "{}" pdf)jpg"
但它不起作用(文件被重命名为filename.pdfjpg)。我认为问题在于子进程立即执行(甚至在调用parallel 之前)。我希望为每个文件执行子进程。
感谢find -exec with multiple commands我可以做到:
find *.pdf -exec sh -c 'convert "$1" "$(basename "$1" pdf)png"' _ {} \;
但我想使用GNU parallel。以下方法不起作用:
find ./ -type f | parallel --gnu sh -c 'convert "$1" "$(basename "$1" pdf)jpg"' _ {}
当然,我可以使用两个命令(例如使用rename)来做到这一点,但我想学习如何使用一个命令和GNU parallel 来做到这一点。
【问题讨论】: