Как вставить строку в файл в AIX, желательно с помощью sed? - PullRequest
0 голосов
/ 13 июля 2020

Я хочу вставить строку «новая строка» в файл «Textfile.txt» в строке номер 3 в AIX.

Перед вставкой Textfile.txt выглядит как

one
two
four

После вставки Textfile.txt выглядит как

one
two
new line
four

Я уже сделал это на Linux, но с AIX я обнаружил, что он не работает с решением Linux.

Удивительно, но я нигде не мог найти простого решения этой проблемы.

Я использую эту команду в Linux и работаю

echo "target_node = ${arr[0]}"
echo "target_file = ${arr[1]}"
echo "target_line = ${arr[2]}"
echo "target_text = ${arr[3]}"

escape "$ (s sh -f $ {arr [0]} "sed -i" $ {arr [2]} i $ (escape $ {arr [3]}) " $ {arr [1]}; exit") "

Ответы [ 2 ]

0 голосов
/ 06 августа 2020

Привет, Спасибо за помощь,

Я создал сценарий таким образом, что он копирует файл в linux обновления изменений и фильмов в AIX.

введите описание изображения здесь

0 голосов
/ 14 июля 2020

Суммируя предыдущие фрагменты информации, записанные в виде комментариев: Опция -i не существует в AIX! Sed, используйте временный файл; синтаксис команды более строгий, чем в Linux.

sed '2a\
Insert this after the 2nd line' "$target_file" >"$target_file.tmp"
mv -- "$target_file.tmp" "$target_file"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...