[root]grep -w "/opt/VRTSodm/lib/libodm64.so" PACKAGE/VRTSodm_f2
/opt/VRTSodm/lib/libodm64.so -r-xr-xr-x
/opt/VRTSodm/lib/libodm64.so.1 -r-xr-xr-x
我只想将输出作为第一个字符串
该-w
选项仅要求匹配以非字母为界。如果您有更严格的要求,则需要明确指定它们。
因为 plaingrep
不支持开箱即用的分组和交替,所以我在这里使用grep -E
(aka egrep
):
grep -E '(^|[[:space:]])/opt/VRTSodm/lib/libodm64.so([[:space:]]|$)' PACKAGE/VRTSodm_f2
您可以简单地在表达式末尾添加一个空格,它将适用于您提供的示例。
使用该-o
选项。它将仅打印该行的匹配部分:
grep -o '/opt/VRTSodm/lib/libodm64\.so\.1\?' your_file