Если бы вы сказали в самом начале, что ваши файлы txt
на самом деле являются файлами JSON (, так как ваш образец просто выглядит как )-, это изменило бы все и предотвратило бы большинство вопросов/комментариев.
Используйте соответствующие инструменты JSON, такие как jq
, так как это было бы правильно:
for f in *.txt; do
if grep -q '"moveLimit":[0-9]*,' "$f"; then
jq -c '.moveLimit |=. + 100' "$f" > tmp_f && mv tmp_f "$f"
fi
done
У вас есть несколько вариантов:
Просто убедитесь, что вы работаете исключительно от имени пользователя и не перезаписываете что-то, принадлежащее пакету.