如何将Linux查找,转换和复制命令合并为一个命令

问题描述 投票:0回答:1

我有以下cmd可以提取文件名中带有STP模式的所有.pdf文件,并将它们放置在文件夹中:

find /home/OurFiles/Images/ -name '*.pdf' |grep "STP*" | xargs cp -t /home/OurFiles/ImageConvert/STP/

我还有另一个将pdf转换为jpg的cmd。

find /home/OurFiles/ImageConvert/STP/ -type f -name '*.pdf' -print0 |
  while IFS= read -r -d '' file
    do convert -verbose -density 500 -resize 800 "${file}" "${file%.*}.jpg"

    done

是否可以将这些命令合并为一个?另外,如果可能的话,我想在单个命令中在转换后的图像文件名前添加前缀。例如:STP_OCTOBER.jpg到MSP-STP_OCTOBER.jpg。任何反馈是非常感谢。

linux unix scripting jpeg
1个回答
0
投票

也许像:

find /home/OurFiles/Images -type f -name '*STP*.pdf' -print0 |
  while IFS= read -r -d '' file; do
      destfile="/home/OurFiles/ImageConvert/STP/MSP-$(basename "$file" .pdf).jpg"
      convert -verbose -density 500 -resize 800 "${file}" "${destfile}"
  done
© www.soinside.com 2019 - 2024. All rights reserved.