如何将grep与变量和通配符一起使用?

时间:2020-04-14 10:37:53

标签: bash unix awk grep

如何在grep中同时处理通配符和变量? 我的目标是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等。 谢谢。

1 个答案:

答案 0 :(得分:0)

string*与stringggggg匹配。您可能要匹配string.*

您可以通过将字符串彼此并置来串联它们。

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

等同于

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

所以我想你想要第二个。