итеративное изменение файла в цикле bash - PullRequest
0 голосов
/ 25 октября 2018

У меня есть файл default.txt с этой строкой

DEFAULT_CONFIG_PTH = models/config_100i.ini

, и мне нужно изменить его в цикле

for m in $(seq 2 55); do
  sed 's/100i/i${m}/g' default.txt > tmp.txt
    mv tmp.txt default.txt
    run *.py # it uses default.txt
done

Проблема в том, что каждый раз, когда я меняю файл100i меняется на новое значение, скажем, i2 Я не могу изменить его на следующей итерации на i3, так как мне нужно заменить i2 вместо 100i.Есть ли способ обойти это?

1 Ответ

0 голосов
/ 25 октября 2018

Конечно.Скопируйте исходный файл под другим именем, скажем, template.txt.Затем выполните

sed '...' template.txt > default.txt

и все готово.

Другой способ - исправить скрипт python, чтобы он принимал имя файла в качестве аргумента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...