Хорошо, это сводит меня с ума.
У меня есть 4 поля, разделенные двоеточиями. Я пытаюсь заменить только последнее поле переменной. но проблема в том, что когда две строки имеют одинаковое содержание, обе они будут изменены. Я думал, смогу ли я дать sed ссылку на то, какую строку я хочу изменить. Другими словами, если первое поле - R2, тогда замените его последнее поле
файл:
R1:name1:date1:black
R2:name2:date2:black
Я хочу, чтобы это было так
R1:name1:date1:black
R2:name2:date2:black2
Вот что у меня есть
Переменной
уже присвоено четвертое поле. пользователю было присвоено имя zenity для ввода имени.
variable=$(awk -F ":" '$2 ~ /'"$name"'/ {print $4}' file)
sed -i 's/'$variable'/black2/g' file
Заранее спасибо.