Я получаю адское синтаксис, используя sed с переменными, содержащими путь к файлу, обратный вызов регулярного выражения и арифметическое выражение. Я не знаю, как правильно избежать вещей.
У меня есть путь к файлу в текстовом файле с рядом рядом с ним. Я хочу найти эту строку и увеличить число.
FILE="/home/username/scripts/test.txt"
LINE="/home/username/Pictures/properties/wallpaper/span/tree.jpg"
sed -i -e "s,'$LINE' \([0-9]*\),'$LINE' $((\1+1))," $FILE
Например ..
/home/username/Pictures/properties/wallpaper/span/tree.jpg 2
должно стать ..
/home/username/Pictures/properties/wallpaper/span/tree.jpg 3
Что это лучший способ избежать "." в пути к файлу? Как правильно реализовать обратный вызов \1 и арифметическое выражение $((\1+1)?
В настоящее время я получаю плохой токен \1+1.