这很奇怪。我只想 grep 包含/run
.但它也返回其他行。
[root@s5 ~]# df -h | grep -w "tm"
[root@s5 ~]# df -h | grep -w "tmpfs"
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 489M 6.8M 483M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
tmpfs 98M 0 98M 0% /run/user/1001
tmpfs 98M 0 98M 0% /run/user/0
[root@s5 ~]# df -h | grep -w "tmpf"
[root@s5 ~]# df -h | grep -w "/run"
tmpfs 489M 6.8M 483M 2% /run
tmpfs 98M 0 98M 0% /run/user/1001
tmpfs 98M 0 98M 0% /run/user/0
答案1
-w, --word-regexp 仅选择包含构成整个单词的匹配项的行。测试是匹配的子字符串必须位于行的开头,或者前面有一个非单词组成字符。同样,它必须位于行尾或后跟非单词组成字符。单词组成字符是字母、数字和下划线。
我说,按预期工作。如果您的目的是只获得第一场比赛,您应该使用
$ df -h | grep -w "/run$"