我想做类似的事情
find ./ -type f | parallel --gnu convert "{}" "$(basename "{}" pdf)jpg"
但它不起作用(文件被重命名为filename.pdfjpg
)。我认为问题在于子进程立即执行(甚至在调用之前parallel
)。我希望为每个文件执行子进程。
感谢find -exec 有多个命令,我可以做到:
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"' _ {}
当然,我可以用两个命令(例如 using rename
)来做到这一点,但我想学习如何用一个和用GNU parallel
.