Evince отсутствует шрифт в меню приложения

Если я правильно понял вопрос, речь идет о том, как сделать ту же команду (grep), с теми же параметрами и тем же вводом, но несколько раз, с разными аргументами регулярного выражения и разными выводами. И я думаю, вы хотите избежать ненужного повторения/дублирования.

Кажется, вам нужен массив регулярных выражений (строки поиска):

declare -A regex
regex[1]="line1\|here1"
regex[2]="line2\|here2"
regex[3]="line3\|here3"
regex[4]="line4\|here4"

for i in "${!regex[@]}"
do
        grep -h -r --color=always "${regex["$i"]}" file.txt >> "pattern$i.txt"
done

Первая строка (declare -A regex) объявляет ассоциативный массив называется regex; это означает, что он создает массив в качестве заполнителя, но не вносит в него никакой информации (элементов). Следующие четыре строки заполняют массив четырьмя элементами, которые являются регулярными выражениями, пронумерованы числами 1, 2, 3 и 4. (Я использую эти индексы, потому что это то, что вы, кажется, хотите, но вы можете использовать любые отдельные строки в качестве индексов: например, уно, дос, трес и куатро, или муравей, летучая мышь, кошка и собака. ) Оператор for, fori in"${!regex[@]}", заставляет переменную i перебирать значения индекса 1, 2, 3 и 4. (Если бы я пропустил ! и сказал fori в "${regex[@]}", он бы перебирал значения элементов, строка1\|здесь1, строка2\|здесь2, строка3\|здесь3 и строка4\|здесь4.) Когда $i равно 1, ${regex["$i"]} сокращается до ${regex[1]}, который расширяется до строка1\|здесь1. Итак, цикл повторяется (выполняется) четыре раза, выполнив четыре команды grep, которые вы хотите.

Если вы хотите запустить процессы grep параллельно, просто выполните:

for i in "${!regex[@]}"
do
        grep -h -r --color=always "${regex["$i"]}" file.txt >> "pattern$i.txt" &
done
wait

______________
 Если индексы численно различные неотрицательные целые числа, вы можете опустить оператор declare.

1
20.06.2016, 00:28
1 ответ

Una causa de esto parece ser que la fuente de la interfaz de usuario requerida se encuentra en una partición diferente -que no le gusta al módulo de seguridad AppArmor. Más información aquí .

Suponiendo que la fuente se encuentra dentro de un directorio en algún lugar como /mnt/path/to/my/fonts, puede intentar agregar la línea:

/mnt/path/to/my/fonts/**

(nota doble asterisco )al final del archivo:

/etc/apparmor.d/abstractions/fonts 

y luego reinicie su sistema.

0
28.01.2020, 01:15

Теги

Похожие вопросы