gpt4 book ai didi

bash - 嵌套的 herodoc 操作顺序

转载 作者:行者123 更新时间:2023-12-04 07:45:53 24 4
gpt4 key购买 nike

我有以下代码 -

ssh host sh -s << EOF
cd /backup/

ls

psql -U user -d db << SQL
$(sed 's/${previous_quarter}/${current_quarter}/' table_quarters.sql);
$(sed 's/${previous_quarter}/${current_quarter}/' plans.sql);
SQL

EOF
这是我执行它时遵循的执行顺序 -
  • table_quarters脚本
  • plans脚本
  • ls命令。

  • 为什么不遵循这个执行顺序 -
  • ls命令
  • table_quarters脚本
  • plans脚本
  • 最佳答案

    您正在向 ssh 的标准输入发送一个字符串.只有在 $(...) 中的东西才能构造这个字符串首先运行,因为这些部分将被包含的命令的输出替换。
    一旦字符串被展开,它就会通过 ssh 发送到按顺序运行结果命令的远程机器。
    如果要在远程端运行扩展,则需要正确转义美元符号。

    关于bash - 嵌套的 herodoc 操作顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67199110/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com