Вывести конкретную строку для exiv2? - PullRequest
0 голосов
/ 26 июня 2018

Используя exiv2, вы можете выводить информацию об изображении в терминал. Тем не менее, он выводит несколько строк информации:

exiv2 -ps ~/filelocation/filename.jpg

Выводит что-то вроде этого:

File name       : ~/filelocation/filename.jpg
File size       : 12345 Bytes
MIME type       : image/jpeg
Image size      : 800 x 600
~/filelocation/filename.jpg: No Exif data found in the file

Как мне дать команду терминалу выводить только данные о размере изображения из этого?

Что я действительно хочу, так это:

exiv2 -ps ~/filelocation/filename.jpg [some command here]

Выход:

800 x 600

1 Ответ

0 голосов
/ 26 июня 2018

Попробуйте это -

exiv2 -ps ~/filelocation/filename.jpg |
  sed -n '/Image size/{ s/^.*: //; p; }'

sed's -n подавляет вывод по умолчанию.

/pattern/ соответствует строка за строкой.

{...} оборачивает скрипт действий для выполнения соответствующих строк.

s/^.*: //; снимает ведущую строку.

p; печатает значение.

...