所以我在一个名为indexes.txt的文件中有一个索引列表。我想读取该文件中的每个索引,并从另一个名为input.txt的文件中删除相应的行。到目前为止,我有这个实现工作:
while read -r index
do
sed -i "${index}d" $input.txt
done < "indexes.txt"
但是,这种实现根本不能很好地扩展。我的index.txt文件有12500行,input.txt有大约300,000行。我想删除每一行并每次保存input.txt都需要花费很多时间(每个索引需要几秒钟)。有没有办法更有效地做到这一点?
编辑:对不起,忘了提及indices.txt中的索引是唯一的,严格减少整数。