С помощью GNU awk(gawk
)вы можете использовать правило BEGINFILE
для чтения нового шаблона при каждом изменении входного файла:
$ gawk 'BEGINFILE{getline pat < "search.patterns"} $0 ~ pat' file\ {1..3}.txt
home 3
dog 1
cat 4
Вы действительно должны проверить, что getline
возвращает новый шаблон, например
gawk '
BEGINFILE {
if((getline pat < "search.patterns") <= 0) {
print "Error reading pattern" > "/dev/stderr"
exit 1
}
}
$0 ~ pat
' file\ {1..3}.txt
Обратите внимание, что шаблоны awk
являются расширенными регулярными выражениями, подобными тем, которые поддерживаются grep
с опцией -E
.
Вы можете добиться того же в не -GNU awk
, передав search.patterns
в качестве первого файла и используя соответственно NR
и FNR
либо для чтения шаблонов в индексированном массиве, либо для поиска следующий шаблон в массиве.
Если вы получили сообщение «Не авторизовано для выполнения операции» и у вас есть Удаленный рабочий стол Chrome.
Решение: остановить службу удаленного рабочего стола Chrome:
/opt/google/chrome -удаленный -рабочий стол/chrome -удаленный -рабочий стол --остановить
Снова запустите службу удаленного рабочего стола Chrome:
/opt/google/chrome -удаленный -рабочий стол/chrome -удаленный -рабочий стол --запуск