Я попытался найти последнее вхождение в файл с помощью sed. В опции HP-UX tac недоступно.KSH: команда sed для поиска и замены последнего вхождения строки в файл
Для Ex: Ниже приведены данные в файле,
A|2121212|666666666 | 2|01|2 |B|1111111111 |234234234 |00001148|
B|2014242|8888888888| 3|12|3 |B|22222222222 |45345345 |00001150|
C|4545456|4444444444| 4|31|4 |B|3333333333333 |4234234 |00001148|
Пытаюсь:
cat $filename | sed 's/00001148/00001147/g'
Он меняется от 00001148 до 00001147 как для возникновения 00001148.
Я должен найти |00001148|
последнего вхождения и заменить другим номером. В настоящее время моя команда СЭД меняется как два экземпляра 00001148.
Соответствует ли строка последней строке файла? – nu11p01n73R
Да, моя команда соответствует и заменяет 00001147 как в первой, так и в последней строке. Но я хочу изменить только в последней строке соответствия. – Srinivas
Обратите внимание, что использование 'cat' полностью UUOC - бесполезное использование' cat'. 'sed' отлично умеет читать файлы. –