首页 > 解决方案 > 如何从自定义行开始循环遍历bash中的文件?

问题描述

我有一个文件,我想循环使用 bash 脚本的特定部分。这是它的格式示例:

FILE 1

(exclude)
. 

(Start loop from here)
.
.
.
(stop)

如何从我需要的行开始循环文件并在需要的地方停止?我想我需要一个 for 循环来应对这种情况?如果需要 grep,我确实知道第一行的模式。或者对于我的所有文件来说可能是恒定的行号(比如从 5 开始,在 9 停止)

标签: bashfileloops

解决方案


既然你说你有行号,你可以使用tail. 例如,要遍历从第 42 行开始的文件,您可以执行

tail -n +42 YOUR_FILE | while line
do
    process_line "$line"
done

推荐阅读