Добавление одного разрыва строки плюс одна строка текста внизу - в одной строке, одном сегменте, коде

Как упоминалось в ответе на аналогичный вопрос о замене разделов ELF, обсуждаемый на reverseengineering.se, простое использование dd может быть достаточным при некоторых обстоятельствах, за исключением того, что новый архив не является большим , например есть ли переезды.

0
07.05.2017, 11:15
2 ответа

Вот несколько однострочников, с которыми вы можете поиграть и заставить их работать с sudo:

printf '%s\n' a '' 'alias www="cd /var/www/html"' . ,p q | ed -s /etc/bash.bashrc

то же самое со строкой здесь:

ed -s /etc/bash.bashrc <<< $'a\n\nalias www="cd /var/www/html"\n.\n,p\nq'

заменить ,p с w для редактирования на месте; или

sed -e '${G;G;s|$|alias www="cd /var/www/html"|' -e'}' /etc/bash.bashrc

добавить -i (gnu sed) или -i '' (bsd sed) для редактирования на месте; или

cat <<< $'\nalias www="cd /var/www/html"' >> /etc/bash.bashrc
1
28.01.2020, 02:16
printf '\nalias www="cd /var/www/html"\n' | sudo tee -a /etc/bashrc

printf интерпретирует символы обратной косой черты в стиле C, включая \n. tee -a открывает данный файл для добавления и записывает в него полученные данные.

Вы также можете применить это к существующему bash -c:

sudo bash -c "printf '\\nalias www=\"cd /var/www/html\"\\n' >> /etc/bashrc"

, который не использует операторы оболочки верхнего уровня, если вы действительно хотите их избежать.

4
28.01.2020, 02:16

Теги

Похожие вопросы