Blo*_*oke 8 echo escape-characters here-document
我经常发现自己cat file | awk 'stuff'
在 shell 中测试命令(例如),当我对它的工作方式感到满意时,我会将命令附加到脚本文件中。
假设这是我创建的命令 cat file.txt | awk -F '|' '$3 == "\"0\""'
如何快速将其回显到文件中而不必先转义内容并且不必使用鼠标?
有没有办法做类似的事情
echo --verbatim the_command_with_lots_of_quotes_and_everything >> file.sh
或者
cat <<'EOF'\n the_command \n EOF >> file.sh
?
不是那么快,但是 zsh (也许还有 bash?)有一个名为 的功能fc
,我不确定它代表什么,但如果你输入它,它似乎会打开命令,无论你$EDITOR
是什么。
或者也许你可以这样做history | tail -1 >> file
。
就在一行中执行定界符而言,如下:
~$ echo -e "cat << EOF\nhello\n12345\nEOF\n" | sh
hello
12345
Run Code Online (Sandbox Code Playgroud)
是我能想到的最接近的。