【发布时间】:2021-02-15 05:17:56
【问题描述】:
我有一个 while 循环逐行读取文件。基于某些条件,我想删除同一个文件的几行以减少循环时间(因为文件有数百万行)。 有没有可能的方法? 下面是代码示例:
while read -r line
do
<Processing>
sed -i "/<pattern>/d" $file
done < "$file"
当我运行上述代码时,它不会在运行时删除行。我只能在循环结束后才能看到更新的 $file(这不会减少循环时间)。
【问题讨论】:
-
这甚至可以用任何其他语言实现吗?
标签: bash shell unix optimization time