Почему это предупреждение о невозможности разрыва строки из man-страницы grep gcc?
Я пытался найти строку, заканчивающуюся -s
с помощью следующей команды, но получил предупреждения:
$ man gcc | grep '\-s$'
<standard input>:4808: warning [p 54, 13.2i]: can't break line
$ man gcc | egrep '\-s$'
<standard input>:4808: warning [p 54, 13.2i]: can't break line
Ниже моя среда разработки:
$ uname -a
Linux localhost 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
$ gcc --version
gcc (Debian 4.9.2-10) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1 ответ
Решение
Обычно man
форматирует контент в соответствии с шириной терминала. Вы перенаправляете его вывод в канал, у которого нет "ширины экрана", поэтому он форматирует, используя ширину по умолчанию 80 символов. На некоторых страницах руководства есть таблицы, ширина которых превышает 80 символов, поэтому вы получаете предупреждение "не разбить". Попробуй это:
$ MANWIDTH=160 man gcc | grep '\-s$'