LINUX.ORG.RU

Ответ на: комментарий от kondor

dirty; smth. like this:

for F in *.jpg; do
 if [[ -1 -eq `/usr/bin/file $F | grep PNG | wc -l` ]]; then
    mv $F `echo $F | sed -s "s/\.jpg$/.png/g"`
 fi
done

kondor ★★★
()
Ответ на: комментарий от kondor

Спасибо, разобрался.

Привожу команду:

file * | grep PNG | grep -o ".*\.jpg" | while read x; do mv "$x" "`echo $x | sed "s/\.jpg/.png/"`"; done

Sikon ★★★
() автор топика

однострочник :-)

$ find /dir -maxdepth 1 -type f -name '*.jpg' | \
  xargs file | grep 'PNG image data' |          \
  cut -d':' -f1 | rename 's/\.jpg$/.png/'

sdio ★★★★★
()
Ответ на: комментарий от sdio

Охренеть!!! о_О Такого я ещё ниразу не видал. ^_^

Laz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.