2016-10-03 62 views
0

我在编写一个相当基本的脚本,首先通过我拥有的文本文件猫,并且对于包含世界的每一行'NUMERIC'只运行一个sed命令。我想知道我该如何去做这件事?包含特定单词的sed行的脚本

所以基本上我首先有一个非常大的文本文件,这个脚本需要运行某种for循环(或其他)来通过并运行一个sed命令,只有当文本文件中的行包含单词' NUMERIC”

感谢

+0

如果您提供的样本数据缩小你的问题会更好。下面的一位用户通过删除“非NUMERIC”行来回答您的问题以进行替换。另一位用户通过保留“非NUMERIC”行进行替换。 – blackpen

回答

0

或者为什么不这样做:

cat file.txt | grep 'NUMERIC' | sed 's/abc/def/' 

在上面的例子中,我catting文件 “file.txt的”,并然后对字符串'NUMERIC'进行格式化,这会给我带有'NUMERIC'的行,然后应用sed操作将abc替换为def(替换您选择的SED操作)。

上述命令将在屏幕上打印输出。如果你想保存它,你可以将输出重定向到一个文件。下面

例如:

cat file.txt | grep 'NUMERIC' | sed 's/abc/def/' >> new_file.txt 
0

您可以将您的sed命令之前指定的地址。

只有地址模式匹配线将被处理:

$ sed '/NUMERIC/s/five/six/' <<< "five NUMERIC" 
six NUMERIC 
相关问题