我的文件夹和文件如下所示:
/thumbs/6b0/6b029aab9ca00329cd28fd792ecf90a.jpg
/thumbs/6b0/6b029aab9ca00329cd28fd792ecf90a-s.jpg
/thumbs/d11/d11e15a72e20e14c45bd2769d763126d.jpg
/thumbs/d11/d11e15a72e20e14c45bd2769d763126d-s.jpg
我想将以下命令应用于拇指文件夹中所有子目录中名称中没有 -s 的文件。
mogrify -resize 50% -quality 85 -strip filename.jpg
我环顾四周 find 和 grep 但不知道如何做到这一点。
任何帮助表示赞赏。
答案1
find thumbs/ -not -name "*-s.jpg" -exec mogrify -resize 50% -quality 85 -strip {} \;
答案2
回答主题中的问题:
find . -name '????????????????????????????????.jpg' -exec cmd {} \;
要插入这 32?
秒,请使用tcsh
、zsh
或bash
在emacs
模式中键入Alt+3Alt+2?。使用这些外壳并ksh
在vi
模式下,输入 a ?
,使用 离开插入模式Esc,然后按x剪切该内容?
,然后32p
粘贴 32 次。
使用 GNU find
,您还可以执行以下操作:
find . -regextype egrep -regex '.*/[^/]{32}\.jpg' -exec cmd {} \;