我正在逐行读取文本文件,但是有时该过程失败。在那种情况下,当我尝试调试发生原因时,我想重新启动该过程,但要从处理的最后一行开始。可能吗?存储它所在的行并不难,但是我不知道以一种有效的方式开始该过程(暴力方式只是再次读取所有文件,并检查何时到达所需的行) ),在另一段脚本中运行。
我正在这样阅读:
�
答案 0 :(得分:3)
您需要将断号行存储在某个地方,然后您可以将其直接读取或传递给脚本,并使用tail跳过之前的内容:
from_line=${2:-0}
while IFS='' read -r line || [[ -n "$line" ]]; do
do thing with "$line"
done < <(tail -n +"$from_line" "$1")