В настоящее время я работаю над небольшим сценарием для команды "nslookup", и в ходе тестирования я столкнулся с проблемой, которую не понимаю. В моем сценарии автоматически создается файл .txt, и пользователь может ввести в него некоторый текст, если пожелает. Он также может удалить определенные строки в документе. Я попытался написать его с помощью «sed», но, похоже, он работает неправильно.
Вот меню с вывода терминала:
Domains:
1) new_domain
2) domain
3) Create new Domain
4) Delete a Domain
5) Quit
Input>
Первые два числа, также представляющие строку каждого текста.
Код для удаления домена следующий:
filename=domains.txt
old_filename=domains_backup.txt
read -p "Which domain-number shall be deleted?: " num_input
mv $filename $old_filename
sed "/$num_input/d" < $old_filename > $filename
rm $old_filename
Но при выполнении этого сценария, когда пользователь хочет удалить строку 2 (домен), текстовый файл остается прежним и не обновляется.
Когда я пытаюсь сделать то же самое только с помощью терминала, все работает нормально.
Я что-то упускаю?