Сайт | Скачать | Видео | Wiki

Автор Тема: Небольшая неясность в bash'е  (Прочитано 783 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Neyel

  • Ветеран
  • *****
  • Сообщений: 1546
  • Репутация: +28/-0
  • Автор темы
Небольшая неясность в bash'е
« : 25 Август 2020, 10:37:45 »
Если выполнить:
Код
ffmpeg -i 'Enjoykin — Новый Год (feat. Михаил Горбачёв)-RetH0VzJNKw.mp4' | grep Duration
ffmpeg version 4.3 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 7.2.1 (GCC) 20171128
  configuration: --prefix=/usr --enable-shared --disable-static --enable-gpl --enable-runtime-cpudetect --enable-avresample --enable-pthreads --enable-small --disable-ffprobe --disable-debug --disable-doc --enable-vdpau --enable-openssl --enable-nonfree
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Enjoykin — Новый Год (feat. Михаил Горбачёв)-RetH0VzJNKw.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    creation_time   : 2018-01-01T06:33:43.000000Z
  Duration: 00:02:00.67, start: 0.000000, bitrate: 1505 kb/s
    Stream #0:0(und): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 1375 kb/s, 30 fps, 30 tbr, 90k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2018-01-01T06:33:43.000000Z
      handler_name    : ISO Media file produced by Google Inc. Created on: 12/31/2017.
    Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
    Metadata:
      creation_time   : 2018-01-01T06:33:43.000000Z
      handler_name    : ISO Media file produced by Google Inc. Created on: 12/31/2017.
At least one output file must be specified
- то вывод будет полный, но если добавить 2>&1  - то всё отрабатывает как надо:
Код
ffmpeg -i 'Enjoykin — Новый Год (feat. Михаил Горбачёв)-RetH0VzJNKw.mp4' 2>&1 | grep Duration
  Duration: 00:02:00.67, start: 0.000000, bitrate: 1505 kb/s
Почему так, кто знает?

Оффлайн Neyel

  • Ветеран
  • *****
  • Сообщений: 1546
  • Репутация: +28/-0
  • Автор темы
Re: Небольшая неясность в bash'е
« Ответ #1 : 25 Август 2020, 10:40:32 »
2 - вроде означает STDERR - но почему ffmpeg выводит туда свой вывод - непонятно

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34044
  • Репутация: +232/-0
    • PuppyRus-A
Re: Небольшая неясность в bash'е
« Ответ #2 : 25 Август 2020, 11:13:22 »
Так захотели его авторы. Им виднее

Оффлайн betcher

  • Ветеран
  • *****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: Небольшая неясность в bash'е
« Ответ #3 : 26 Август 2020, 05:14:30 »
Так делают чтоб в пайп не попадал весь выхлоп. Все что они посчитали не значимым отправляют в stderr. Возможно и здесь тот случай, посмотрите что там в stdout, выполнив с 2>/dev/null без |grep....

Оффлайн Neyel

  • Ветеран
  • *****
  • Сообщений: 1546
  • Репутация: +28/-0
  • Автор темы
Re: Небольшая неясность в bash'е
« Ответ #4 : 26 Август 2020, 05:20:51 »
Так делают чтоб в пайп не попадал весь выхлоп. Все что они посчитали не значимым отправляют в stderr. Возможно и здесь тот случай, посмотрите что там в stdout, выполнив с 2>/dev/null без |grep....
Пусто :
Код
live@lfa1801:/mnt/sdb1$ ffmpeg -i 'Deep Purple - Child In Time - 1970-OorZcOzNcgE.mp4' 2>/dev/null
live@lfa1801:/mnt/sdb1$

Оффлайн betcher

  • Ветеран
  • *****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: Небольшая неясность в bash'е
« Ответ #5 : 26 Август 2020, 05:36:12 »
Действительно странно тогда.