Rm
轉換後無法rm格式
如何修復以下命令,以便刪除具有 rm 命令指定格式的所有文件?
#!/bin/bash mogrify -verbose -format webp -quality 70 *.jpg *.jpeg *.JPEG *.JPG *.png *.PNG && rm --verbose *.jpg *.jpeg *.JPEG *.JPG *.png *.PNG $SHELL
該命令成功地將圖像轉換為 webp,但 rm 不會刪除任何原始文件。
轉換為 webp 後出現以下錯誤:
mogrify-im6.q16: unable to open image `*.jpeg': No such file or directory @ error/blob.c/OpenBlob/2874. mogrify-im6.q16: unable to open image `*.JPG': No such file or directory @ error/blob.c/OpenBlob/2874. mogrify-im6.q16: unable to open image `*.JPG': No such file or directory @ error/blob.c/OpenBlob/2874. mogrify-im6.q16: unable to open image `*.png': No such file or directory @ error/blob.c/OpenBlob/2874. mogrify-im6.q16: unable to open image `*.png': No such file or directory @ error/blob.c/OpenBlob/2874. mogrify-im6.q16: unable to open image `*.PNG': No such file or directory @ error/blob.c/OpenBlob/2874. mogrify-im6.q16: unable to open image `*.PNG': No such file or directory @ error/blob.c/OpenBlob/2874.
在使用萬用字元模式之前,將此
bash
選項添加到您的腳本中shopt -s nullglob
這告訴外殼程序刪除不匹配的模式,而不是將它們保留為文字。因此,從您的範例中,
*.png
將被刪除而不是保留為以星號開頭的五個字元的文件名(可能不存在)。