linux – grep:无效的正则表达式
发布时间:2020-12-14 01:12:39 所属栏目:Linux 来源:网络整理
导读:我有一个文本文件,如下所示: haha1,haha2,haha3,haha4test1,test2,test3,test4,[offline],test5letter1,letter2,letter3,letter4output1,output2,output3,output4check1,[core],check2num1,num2,num3,num4 我需要排除所有那些带有“[]”的行并将它们输出到
我有一个文本文件,如下所示:
haha1,haha2,haha3,haha4 test1,test2,test3,test4,[offline],test5 letter1,letter2,letter3,letter4 output1,output2,output3,output4 check1,[core],check2 num1,num2,num3,num4 我需要排除所有那些带有“[]”的行并将它们输出到另一个文件,而不是那些带有“[]”的行. 我目前正在使用此命令: grep ",[" loaded.txt | wc -l > newloaded.txt 但它给了我一个错误:
解决方法
使用grep -F将搜索模式视为固定字符串.你也可以用grep -c替换wc -l.
grep -cF ",[" loaded.txt > newloaded.txt 如果你很好奇,[是一个特殊的角色.如果你不使用-F那么你需要用反斜杠来逃避它. grep -c ",[" loaded.txt > newloaded.txt 顺便说一句,我不知道为什么你还在使用wc -l ……?从您的问题描述中,听起来像grep -v可能更合适. -v反转grep的正常输出,打印不匹配的行. grep -vF ",[" loaded.txt > newloaded.txt (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |