1

Я попытался запустить echo '$(!!:p)' > /tmp/tmptxt.txt , однако я просто получил $(!!:p) . Предыдущая команда может иметь неэкранированные символы, поэтому мне нужно ее избежать.

1 ответ1

1

Вы используете одинарные кавычки, поэтому bash не расширится!». Попробуйте вместо этого использовать двойные кавычки, в результате получится что-то вроде:

mjost@tuca:~$ echo hello
hello
mjost@tuca:~$ echo "!!" > file
echo "echo hello" > file
mjost@tuca:~$ cat file 
echo hello
mjost@tuca:~$ 

В любом случае, вы можете взглянуть на более полный ответ со всеми возможными решениями здесь:

https://stackoverflow.com/questions/6109225/bash-echoing-the-last-command-run

Удачи!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .