Windows命令行/ shell - 将文件附加到另一个文件时,如何忽略与正则表达式匹配的行?
我不熟悉Windows外壳。所以,让我们说,我的文件是这样的:Windows命令行/ shell - 将文件附加到另一个文件时,如何忽略与正则表达式匹配的行?
DontAppend this line shouldn't be appended DontAppend this line shouldn't be either
Some lines
more lines
而且我追加这样的:
type file.txt >> AppendHere.txt
这追加整个文件。我如何制作它,以便跳过以“DontAppend”开头的行?
回答:
一个真正的过滤工具命令FINDSTR会让你寻找不包含字符串或正则表达式,所以你可以用线:
findstr /vrc:"^[^A-Za-z0-9]*DontAppend" file.txt >> AppendHere.txt
/r选项说它应该使用正则表达式,并且脱字符(^)表示它应该以字符串开头。
编辑:添加一个非字母数字字符的过滤器可能解决Unicode问题(Unicode文件有时在开始时有一个不可打印的指示符字符)。
回答:
要么得到grep
窗户或者你可以使用Windows自带的find
命令
type so.txt|find /v "DontAppend" >> output.txt
的/v
选项意味着不符合你的字符串输出线。
find
作品喜欢这一点,但任何一个非常简单的事情越多,你会需要像grep
以上是 Windows命令行/ shell - 将文件附加到另一个文件时,如何忽略与正则表达式匹配的行? 的全部内容, 来源链接: utcz.com/qa/258963.html