tut*_*ing 5 linux bash shell grep text-files
我有一个文本文件,如下所示:
haha1,haha2,haha3,haha4
test1,test2,test3,test4,[offline],test5
letter1,letter2,letter3,letter4
output1,output2,[offline],output3,output4
check1,[core],check2
num1,num2,num3,num4
Run Code Online (Sandbox Code Playgroud)
我需要排除所有那些带有"[]"的行并将它们输出到另一个文件,而不是那些带有"[]"的行.
我目前正在使用此命令:
grep ",[" loaded.txt | wc -l > newloaded.txt
Run Code Online (Sandbox Code Playgroud)
但它给了我一个错误:
grep:无效的正则表达式
使用grep -F治疗搜索模式为固定字符串.你也可以wc -l用grep -c.
grep -cF ",[" loaded.txt > newloaded.txt
Run Code Online (Sandbox Code Playgroud)
如果你很好奇,那[就是一个特殊的角色.如果你不使用-F那么你需要用反斜杠来逃避它.
grep -c ",\[" loaded.txt > newloaded.txt
Run Code Online (Sandbox Code Playgroud)
顺便说一句,我不知道为什么你还在使用wc -l......?从您的问题描述中,听起来grep -v可能更合适.-v反转grep的正常输出,打印不匹配的行.
grep -vF ",[" loaded.txt > newloaded.txt
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3707 次 |
| 最近记录: |