【发布时间】:2016-03-22 08:50:07
【问题描述】:
我有一个变量 (1,3,8,9) 中的行列表。该列表显示了我需要从文本文件中删除哪些行。我可以使用哪个函数来删除特定的行号?
非常感谢您的回复
【问题讨论】:
-
这缺少一个问题。
-
sed,awk,perl,ruby,python,lua,bash, ...
我有一个变量 (1,3,8,9) 中的行列表。该列表显示了我需要从文本文件中删除哪些行。我可以使用哪个函数来删除特定的行号?
非常感谢您的回复
【问题讨论】:
sed, awk, perl, ruby, python, lua, bash, ...
# set -vx
lines2del="(1,3,8,9)"
sedCmds=${lines2del//,/d;}
sedCmds=${sedCmds/(/}
sedCmds=${sedCmds/)/}
sedCmds=${sedCmds}d
sed -i "$sedCmds" file
删除 set -vx 之前的 # 以查看每个 cmd 执行时的调试/跟踪。
如果您的数据周围没有真正的( )(括号),请修复line2del 变量并删除第二和第三行sedCmds=。
IHTH
【讨论】: