要打印的Shell脚本包含从给定行号到下一个给定行数的文件

时间:2014-10-12 11:54:52

标签: shell sed

通过使用命令行参数,我想使用sed在所需的行号之间输出文件的行。所以我无法将参数传递给sed命令。

就像我的意思

sed '$1,$2!d' file_name

1 个答案:

答案 0 :(得分:2)

您可以使用cat -n枚举然后sed打印出一系列行:

cat -n file_name | sed -n '1,2p'

或者如果你想要一个范围以外的东西,你可以打印出选择行:

cat -n file_name | sed -n '1p;2p;4p'

或者将范围作为变量传递(使用shell扩展):

cat -n file_name | sed -n "$1,$2p"