Ваш скрипт анализирует весь кусок для каждой замены!
Это означает, что для каждого блока открывается сценарий, проходит все строки, возможно, выполняет 1 замену, закрывает файл и перемещает его в исходный файл (из-за -i
опции).
При условии, что вы хотите заменить шаблон счетным числом, вот способ выполнить все замены сразу для каждого блока:
sed -f <(awk '' replace.list) -i "$chunk"
-f
Опция позволяет принимать SED сценария в качестве входных данных и будет выполняться сразу для всех строк $chunk
файла.
Это, вероятно, уменьшит общее время ...