Заменить строку новой строкой и добавить текст

Вы можете получить эту работу так, как хотите, именно так, как вы ее делали. Я все время это делаю.

Если бы вы использовали zsh и терминал, который заключает свои вставки в скобки специальными управляющими последовательностями, такими как urxvt, по умолчанию это уже работало бы так, как вы хотели. Если вы используете bash, вам просто нужно активировать его интерпретацию скобок вставки, выполнив bind 'set enable-bracketed-paste on'. Затем он будет ждать, пока вы нажмете Enter, прежде чем выполнить то, что вы вставили. В этом отношении разница между bash и zsh заключается в том, что bash будет разделять команды, которые вы вставили в историю, так что для 2 строк вам нужно будет нажать Up, Up, Enter, Up, Up, Enter, в то время как zsh сохраняет команды вставлены сгруппированы как один в истории независимо от того, сколько строк, Вверх, Ввод.

Больше об этом написано в следующих ответах. Второй мой и включает в себя таблицу терминалов, которые поддерживают вставку -в квадратных скобках. Если вы в конечном итоге используете urxvt, я рекомендую установить расширение, которое я включил в ответ, чтобы избежать уязвимости, о которой был вопрос:

https://security.stackexchange.com/a/52655/132634

https://security.stackexchange.com/a/184112/132634

РЕДАКТИРОВАТЬ :Кстати, просто чтобы быть более точным на случай, если вы пропустили это, если вы не делаете этого (с помощью скобок -пасты ), вы открыты для внедрения шелл-кода при вставке с веб-сайтов. Веб-сайты могут, в конце концов, скрывать код всеми возможными способами и заставлять вас копировать его без вашего ведома.

Проверьте этот сайт, чтобы узнать, уязвимы ли вы:

http://thejh.net/misc/website-terminal-copy-paste

Похоже, вас казнят:

git clone git://git.kernel.org/pub/scm/utils/kup/kup.git

когда на самом деле вы должны запускать что-то вроде этого (я удалил не -непечатаемый управляющий байт):

git clone [201~/dev/null; clear; echo -n "Hello ";whoami|tr -d '\n';echo -e '!\nThat was a bad idea. Don'"'"'t copy code from websites you don'"'"'t trust!
Here'"'"'s the first line of your /etc/passwd: ';head -n1 /etc/passwd
git clone git://git.kernel.org/pub/scm/utils/kup/kup.git 

0
08.08.2020, 22:28
1 ответ

Использовать альтернативные разделители

sed 's=<BR>=\nhttps://='

или обратная косая черта

sed 's/<BR>/\nhttps:\/\//'
2
18.03.2021, 23:13

Теги

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