我怎样才能制作一个单独的 sed 脚本(我们称之为 script.sed),它只显示更改的行,而不必-n在执行时使用该选项?(对不起我的英语不好)
我有一个名为 data2.txt 的带有数字的文件,我需要更改以“.5”结尾的行并在控制台中打印出这些更改后的行。
我知道如何使用单个命令 ( sed -n 's/.5$//gp' data2.txt)来执行此操作,但是我们的大学教授要求我们使用sed -f script.sed data2.txt命令执行相同操作。
有任何想法吗?
以下应该适用于您的 sed 脚本:
s/.5$//gp
d
Run Code Online (Sandbox Code Playgroud)
该-n选项将禁止自动打印该行,另一种方法是使用该d命令。从手册页:
Run Code Online (Sandbox Code Playgroud)s/.5$//gp d
这是有效的,因为该行的自动打印发生在一个循环的末尾,并且使用该d命令意味着您永远不会到达一个循环的末尾,因此不会自动打印任何行。
| 归档时间: |
|
| 查看次数: |
3448 次 |
| 最近记录: |