$ lsusb --verbose | grep "THRSL_C_C_V"
结果:
iManufacturer 1 THRSL_C_C_V3.07
我只想提取单词THRSL_C_C_V3.07
。
我试过了lsusb --verbose | grep -w "THRSL_C_C_V"
。没有显示任何内容。
答案 0 :(得分:2)
尝试:
lsusb --verbose | grep -o "THRSL_C_C_V3\.07"
-o
选项只会导致匹配的文本,反向间距会使点数转义,从而允许与请求的文本完全匹配。
答案 1 :(得分:1)
您可以使用awk
代替grep
:
lsusb --verbose | awk '/THRSL_C_C_V/{print $3}'
此awk
命令会搜索其中包含文字THRSL_C_C_V
的行,并使用print $3
确保打印匹配行的第3列。
或者您可以像这样使用grep -o
:
echo 'iManufacturer 1 THRSL_C_C_V3.07' |
grep -oE 'THRSL_C_C_V[^[:blank:]]*'
THRSL_C_C_V3.07
答案 2 :(得分:1)
使用以下内容: -
$ lsusb --verbose | grep "THRSL_C_C_V" | awk '{print $NF}'
或
$ lsusb --verbose | awk '/THRSL_C_C_V/{print $NF}'
这里,$ NF将用于输出的最后一个元素