Хотя вы упоминали sed, это несколько awk -y задач:
awk -v pat="Fred Flintstone" '$0 ~ pat {count++;\
if (count == 2) { $0 = $0" someString" ;} ;}; 1' file.txt
-v pat="Fred Flintstone" сохраняет шаблон Regex в соответствии с переменной pat, которая будет использоваться внутри awk выражения $0 ~ pat проверяет запись против pat для соответствия; если согласовано, переменная count увеличивается на 1, а если count равно 2, запись сбрасывается как имеющая текущий контент плюс someString ({count++; if (count == 2) { $0 = $0" someString" ;} ;}) 1 - это идиома; поскольку это правда, все записи будут напечатаны Пример:
% cat file.txt
Fred Flintstone
Johnson Stone
Fred Flintstone
Fred Flintstone
Michael Clark
% awk -v pat="Fred Flintstone" '$0 ~ pat {count++; if (count == 2) { $0 = $0" someString" ;} ;}; 1' file.txt
Fred Flintstone
Johnson Stone
Fred Flintstone someString
Fred Flintstone
Michael Clark
Не работал сканер, пока я не установил обновленный драйвер:
brscan3-0.2.11-5.amd64.deb (а не brscan3-0.2.11-4.amd64.deb) [ ! d1]
http://www.brother.com/cgi-bin/agreement/agreement.cgi?dlfile=http://www.brother.com/pub/bsc/linux/dlf/brscan3-0.2. 11-5.amd64.deb & amp; lang = English_gpl
с этой страницы.
http://www.brother.com/cgi-bin/agreement/agreement. ? CGI dlfile = HTTP: //www.brother.com/pub/bsc/linux/dlf/brscan3-0.2.11-5.amd64.deb& языки = English_gpl [d5!]
Я должен был сделать следующее дополнительно
http://localhost:631
Затем в CUPS для администраторов я нажал кнопку «Добавление принтеров и классов»
. Остальные шаги интуитивно понятны. Обязательно удалите ранее установленный принтер Brother-7030, если он был установлен по умолчанию ранее в System-> Administration-> Printing.
Теперь мой Brother 7030 отлично работает.