sed '4!q' 文件名没有给出正确的结果

sed '4!q' 文件名没有给出正确的结果

我有一个文件有 10 行。当我执行 sed '4!q' filename 时,为什么它只显示第一行?

答案1

sed表达式4!q将为除第 4 行之外的每一行执行命令q,例如第一行。

在第一行执行q将导致编辑脚本在打印该行的内容后终止。

如果您想输出前四行(不清楚您实际想要做什么),请使用head -n 4or sed 4q(“在第 4 行退出”)。如果要打印除第 4 行之外的所有行,请使用sed 4d(“删除第 4 行”)。

相关内容