使用命令 grep 并定位

Jho*_*han 4 command-line grep pipe xargs locale

如何让 grep 命令在由 locate 命令找到的路由指定的文件中定位某些单词?

locate my.cnf | grep user   
Run Code Online (Sandbox Code Playgroud)

(我希望 grep 命令在为 locate 命令找到的文件上搜索单词“user”)

Jho*_*han 9

如果您的搜索结果确定返回没有空格的路径,您可以这样使用xargs

locate my.cnf | xargs grep user
Run Code Online (Sandbox Code Playgroud)

然而,你应该得到保护自己来处理情况,路径或文件名可能会告诉包含空格的情况下习惯xargs使用null作为分隔符,告诉locate(或任何程序使用的是返回字符串)也发送作为分隔符像这样:

locate -0 my.cnf | xargs -0 grep user
Run Code Online (Sandbox Code Playgroud)

即使您的路径包含像/name with space/my.cnf.