我有一个“任务”列表,我通过它来学习 shell 代码,我需要使用 grep 来隔离包含/etc/passwd
“ ubu
”的行。我知道该命令less /etc/passwd
用于访问/etc/passwd
,并且grep
用于查找/搜索某个字符串模式,但仅此而已
答案1
和grep
:
$ grep -F "ubu" /etc/passwd
这用于grep -F
搜索ubu
文件中的文字字符串/etc/passwd
。如果没有-F
,grep
将被视为ubu
正则表达式。在这种情况下,这不会产生任何影响,但如果字符串包含字符,例如*
,在正则表达式中是“特殊”的,那么这就是如何使它们“不那么特殊”。
grep
将返回包含匹配项的所有行。
如果ubu
是用户名(a完全的用户名,而不仅仅是其中的一部分),那么以下命令还将在系统可能使用的任何目录服务(如 LDAP 或 NIS/YP)中进行查找:
$ getent passwd ubu