多行处理
比如通过ftp下载文件
#!/usr/bin/env bash
username=test
pwd=123
ftp 127.0.0.1 <<EOF
user $username
password $pwd
binary
get filename
quit
EOF
命令 <<结束标记
...
结束标记
结束标记包裹的内容会自动进行变量替换、命令替换等
原样输出
如果只想原样输出,则使用<<\EOF
或则 <<'EOF'
,<<"EOF"
#!/usr/bin/env bash
ftp 127.0.0.1 <<\EOF
user test
password 123
binary
get file$name
quit
EOF
缩进
使用<<-EOF
, - 表示忽略tab(只能是tab)
#!/usr/bin/env bash
ftp 127.0.0.1 <<-EOF
user test
password 123
binary
get filename
quit
EOF