我在变量(1,3,8,9)中有一个行列表。该列表显示了我需要从文本文件中删除哪些行。我可以用哪个功能删除特定的行号?
非常感谢您的回复
答案 0 :(得分:1)
# set -vx
lines2del="(1,3,8,9)"
sedCmds=${lines2del//,/d;}
sedCmds=${sedCmds/(/}
sedCmds=${sedCmds/)/}
sedCmds=${sedCmds}d
sed -i "$sedCmds" file
删除set -vx
之前的#,以查看每个cmd执行时的调试/跟踪。
如果您的数据周围没有( )
(parens),请修正line2del
变量并删除第二行和第三行sedCmds=
。
IHTH