Как добраться 'expr, соответствуют' для извлечения разграниченной двоеточием пары "ключ-значение"?

Вам не нужно подстановку процессов, чтобы получить этот эффект. Попробуйте это:

( echo foo | cat & )

вы получите большой результат (без бара ; Я оставлю это как упражнение) и по той же причине. В обоих случаях CAT начинается как фоновая задача. В моей линии здесь это явный. В случае замещения процесса, это также явное - это отдельный процесс, прикрепленный к файловому дескриптору имени - но это, возможно, не так очевидно.

Детский процесс не обязательно прекращается до Bash , распечатывает следующую подсказку. И поскольку его вывод буферизован, он ничего не выводится, пока оно не заканчивается. В этот момент Bash только что напечатал $ на Стдерре, и теперь фоновый процесс выходит после печати Foo и новая линия.

-1
19.06.2014, 22:39
2 ответа

This worked for me

myvar="present value: 4"
expr match "$myvar" '.*\([0-9]\)'

Output:

4
2
28.01.2020, 05:07

Согласно странице эксперта , соответствует - для привязанного образца REGEXP в STRING . REGEX привязан к обоим концам STRING, поэтому он не может просто соответствовать подстроке.

2
28.01.2020, 05:07

Теги

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