Debian - Как проверить, поддерживается ли пакет?

Вот простой способ. Ниже приводится содержимое сценария с именем script.sh в ~ / bin / .

#!/usr/bin/env bash
if (file "$1" | grep "RaspberryPi"); then
    echo "rm $1" # <- safety first: just echo, no delete
    # rm "$1" # <- uncomment to delete, leave the quotes
fi

Дайте ему разрешение на выполнение ( chmod 0750 ~ / bin / script.sh ). Затем найдите файлы и передайте результаты по одному (используя \; , а не + ) в сценарий.

find ~ -iname *.jpg 2>/dev/null -exec ~/bin/script.sh {} \;

Другой инструмент - идентифицировать из ImageMagick. Этот инструмент описывает характеристики изображения и считывает данные изображения, включая EXIF. Это будет намного медленнее, чем файл , но в изображении гораздо больше информации, чем в файле . Это может помочь, когда файл не описывает данные, которые нужно найти. Его использование может быть следующим.

identify -verbose "$file" | grep "RaspberryPi"

Мы можем проверить код возврата grep (после использования файла или идентификации в if инструкции выше), отобразив его код возврата. Из man grep :

Обычно статус выхода равен 0, если строка выбрана, 1, если строки не были выбраны, и 2, если произошла ошибка.

Объедините эту информацию с тем, что переменная $? содержит код / ​​значение возврата или код / ​​значение выхода самой последней выполненной команды.

file image.jpg | grep "RaspberryPi"
echo $?

В приведенных выше строках будет получено значение нулевое совпадение - для файла результатов, содержащих строку «RaspberryPi».

file image.jpg | grep "Rumpelstiltskin"
echo $?

В приведенных выше строках будет получено значение один - нет совпадения - при условии, что файл не находит совпадения для строки «Rumpelstiltskin».

2
30.10.2015, 18:33
0 ответов

Теги

Похожие вопросы