我有一个场景
我想在整行下面获取不包含此文件名的文件名
"<NAME = $$WORK_STUDENT GEN=123 VARIABLE=EXEC >"
在下面的命令中使用不能正常工作,显示错误
grep -rL "<NAME = $$WORK_STUDENT GEN=123 VARIABLE=EXEC >" >> /d/notfound_list.txt
我遇到的错误是
grep: File: No such file or directory
grep: <NAME =12234WORK_STUDENT GEN=123 VARIABLE=EXEC>: No such file or directory
它无法识别符号=> $$ 取而代之的是它需要一些像process_id这样的数字
我如何搜索整行内容,希望能找到解决方案
谢谢
答案 0 :(得分:1)
从man grep开始,语法为:
grep [选项]模式[文件...]
然后我们阅读:
grep搜索命名的输入文件(如果没有命名文件,则搜索标准输入
您所做的是:
grep -rL "<NAME = $$WORK_STUDENT GEN=123 VARIABLE=EXEC >"
^^^^^ - no file
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - PATTERN
^^^ - these are OPTIONS
您没有给grep
提供任何文件,因此它会等待标准输入以及您输入的任何内容。给grep
提供文件搜索或通过-r
搜索可以递归的目录。
grep -rL "<NAME = $$WORK_STUDENT GEN=123 VARIABLE=EXEC >" some_directory/ some_file.txt