cat 在写文件的时候,变量会被渲染成实际的值,有时候我们希望写入的是原始值(比如写 shell 脚本的时候),那么可以用下面的方法

cat >> a.sh << \EOF
echo `hostname`
echo $HOME
EOF
cat >> a.sh << "EOF"
echo `hostname`
echo $HOME
EOF
cat >> a.sh << 'EOF'
echo `hostname`
echo $HOME
EOF