意图
我正试图遍历一个目录,并将所有9000多个pdf文件转换为png。
for i in *.pdf; do
pdftoppm -f 1 -l 2 -png $i ${i%.pdf*}
done问题
这个循环只适用于大约500种情况。当我在一些没有转换的pdf文件上手动调用pdftoppm时,它可以工作。
例如,循环中不工作的一个文件是w7hnp - FOO BAR 8-18-12 NOT FINAL DOC.pdf。当我使用制表符完成手动调用pdftoppm时,文件名包含转义字符:w7hnp\ -\ FOO\ BAR\ 8-18-12\ NOT\ FINAL\ DOC.pdf和命令工作得很好。
是否有办法确保空间被正确地转义?
我需要保留文件名,以便与数据库中的其他信息相匹配,因此,除非我能够创建一个具有新旧名称的字典,否则重命名将无法工作。
发布于 2018-10-18 20:52:32
您应该引用如下变量:"$i"和"${i%.pdf*}"
https://stackoverflow.com/questions/52882337
复制相似问题