我想编写一个脚本来使用svgexport cli将目录中的 svg 文件转换为 png
svgexport input.svg input.jpg
Run Code Online (Sandbox Code Playgroud)
如何使用 find 和 xargs -I {} 使用以下命令查找和打印 svg 文件:
find . -iname -0 "*.svg" | xargs -I {} svgexport {} ???
Run Code Online (Sandbox Code Playgroud)
如何通过使用第一个参数并将 .svg 替换为 .jpg 来填充第二个参数?
您可以使用bash -cinxargs并使用 BASH 的字符串替换:
find . -name "*.svg" -print0 |
xargs -0 -I {} bash -c 'svgexport "$1" "${1%.svg}.jpg"' - {}
Run Code Online (Sandbox Code Playgroud)
我认为最好用循环来做到这一点while:
find . -iname "*.svg" -print0 |
while IFS= read -r -d '' file; do
svgexport "$file" "${file%.svg}.jpg"
done
Run Code Online (Sandbox Code Playgroud)