gpt4 book ai didi

linux - Groovy sh 命令在我的 echo 命令中不包含引号

转载 作者:太空狗 更新时间:2023-10-29 12:25:21 24 4
gpt4 key购买 nike

我正在尝试将引号内的 hostname 写入文件。我正在 Groovy 脚本中执行此操作。这是我的 sh Groovy 脚本。

sh "echo Add \"my-hostname\" \"$HOSTNAME\" >> /etc/test.conf"

我在 /etc/test.conf 中的预期结果应该是:

Add "my-hostname" "linux-base"

但是当我执行我的 Groovy 脚本时,结果是:

Add my-hostname linux-base

有人请在 sh 命令脚本中帮助我。

最佳答案

两种解决方法:

  1. 使用单引号:

    sh 'echo Add \"my-hostname\" \"'"$HOSTNAME"'\" >> aa'
  2. 使用双重转义:

    sh "echo Add \\\"my-hostname\\\" \\\"$HOSTNAME\\\" >> aa"

我不熟悉groovy,你确定你的命令不需要sh -c吗?

关于linux - Groovy sh 命令在我的 echo 命令中不包含引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43306191/

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