Как я могу использовать grep с переменной и подстановочным знаком? - PullRequest
0 голосов
/ 14 апреля 2020

Как мне работать с подстановочными знаками и переменными в grep? Моя цель состоит в том, чтобы собрать все, что соответствует "string *", и моя строка - $ i. Я перепробовал много вариантов, и ничего не работает:

max="$(nc resources | grep "$i*" | awk '{print $3}')"
available="$(nc resources | grep "$i*" | awk '{print $7}')"

max="$(nc resources | grep '$i*' | awk '{print $3}')"
available="$(nc resources | grep '$i*' | awk '{print $7}')"

также fgrep, grep with flags et c. спасибо.

1 Ответ

0 голосов
/ 14 апреля 2020

string* соответствует stringggggg. Возможно, вы хотите сопоставить string.*

Вы можете объединить строки, поместив их рядом друг с другом.

max="$(nc resources | grep "$i"".*" | awk '{print $3}')"

эквивалентно

max="$(nc resources | grep "$i" | awk '{print $3}')"

Так что, я полагаю, вам нужен второй.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...