Например, у меня есть следующий файл:
4:Oscar:Ferk:Florida
14:Steven:Pain:Texas
7:Maya:Ross:California
и так далее ... У него неизвестное количество строк, потому что вы можете продолжать добавлять к нему больше. Я пишу сценарий, в котором вы можете редактировать имя, указав идентификатор человека и новое имя, которое вы хотите указать в качестве параметров.
Я пытаюсь использовать awk, чтобы найти и затем измените имя в указанной строке c и обновите файл. У меня возникли проблемы, потому что мой код обновляет значение каждого столбца до указанного.
Мой текущий код:
getID=$1
getName=$2
awk -v varID="$getID" -F':' '$0~varID' file.dat | awk -v varName="$getName" -F':' '$2=varName' file.dat > tmp && mv tmp file.dat
Помощь действительно приветствуется, спасибо заранее.