Проблема с привилегиями параллельного порта :по умолчанию, он доступен только пользователям группы lp
. Пользователю root
это явно разрешено, а обычным пользователям — нет.
Добавление пользователя в группу lp
делает параллельный порт доступным без sudo:
adduser <user-name> lp
После этого параллельный порт работает и я могу продолжить настройку.
Ваш первый пример sed
не работает для второго и последующих блоков, потому что/!/q
(обратная косая черта может привести к неопределенному поведению, поэтому я опускаю его )уже выполняется для первого !
и скрипт останавливается там (то же самое для exit
скрипта awk
). Поэтому выполняйте его только после блока, используйте
sed -n '/2\/1\/6.2062/,/!/{p;/!/q;}'
Но простой
sed -n '/2\/1\/6.2062/,/!/p'
как и во второй попытке, также будет работать, если у вас нет проблем с потерей некоторых циклов процессора.
А для будущих скриптов я предлагаю использовать другой разделитель шаблона адреса, если он содержит косые черты типа
sed -n '\_2/1/6.2062_,/!/p'
Легче читать, да?
И да, вы также можете использовать!d
:
sed '\_2/1/6.2062_,/!/!d'
В последнем изменении сценария awk:
p ; /!/{exit}
-
p {print; if (/!/) exit}
поэтому вы выходите после обработки интересующего вас блока, а не в конце первого блока в файле.