sed -e '$! d' работает не так, как ожидалось?

Когда я запускаю:

sudo /usr/local/nginx/sbin/nginx -t 

Я вернусь:

 nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful 

Мне просто нужна последняя строка, поэтому я запускаю:

 sudo /usr/local/nginx/sbin/nginx -t | sed -e '$!d' 

Но я возвращаюсь так же, как без sed.

One Solution collect form web for “sed -e '$! d' работает не так, как ожидалось?”

Ваша команда может вывести на stderr вместо stdout. Чтобы перенаправить stderr в stdout:

 sudo /usr/local/nginx/sbin/nginx -t 2>&1 | sed -e '$!d' 

Если вам нужна только последняя строка вашего вывода, вы также можете использовать tail -n 1 вместо sed .

  • Существуют ли стандартные версии `sed`, на которых` -E` не поддерживается?
  • Стирание в stdin всех экземпляров регулярных выражений, определенных в файле
  • как извлечь некоторые строки в файл данных по сравнению с другим файлом данных? (слияние)
  • sed one-liner, чтобы удалить все между двумя скобками?
  • Почему эта команда работает только для каждой другой строки?
  • GREP / SED или AWK: печать всего абзаца в файле по совпадению с образцом
  • проверка данных в столбцах, когда данные или некоторые могут отсутствовать или присутствовать?
  • Как я могу удалить весь текст между фигурными скобками в многострочном текстовом файле?
  • Как усечь только заданную длину столбца?
  • Извлечение данных из текстового файла
  • Минимизированный код JSON между двумя шаблонами с помощью регулярных выражений
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.