用 heredoc 在脚本里写多行文本或批量喂给命令

heredoc 用一对自定义标记包裹多行文本,<<EOF 开头,结尾单独一行写 EOF。

标记必须顶格写,前后不能有空格,否则会报未找到结束符。

写文件用 cat 加重定向,把内容喂给命令则接在命令后面。

加引号的 <<'EOF' 不展开变量和反引号,写配置文件时更安全。

# 写配置文件:引号包住标记,$ 和反引号都原样保留
cat > /etc/app/app.conf <<'EOF'
listen=8080
debug=false
EOF

# 批量喂给命令:多行 SQL 一次灌进去
mysql -uroot -p app_db <<EOF
select now();
select count(*) from orders;
EOF
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容