【问题标题】:Pass argument in to bash script(curl)将参数传递给 bash 脚本(curl)
【发布时间】:2021-11-18 10:00:39
【问题描述】:

在gitlab中有脚本,任务很简单,通过传递2个参数来运行脚本

我使用命令:

bash <(curl -Ls "https://gitlab.com/sdf/sdf/-/raw/sdf-main-patch-23022/script.sh?inline=false") domain.xyz 8000

在脚本中,一个简单的代码:

let a=$1
let b=$2

我的命令工作但得到错误:syntax error: invalid arithmetic operator (error token is ".xyz")

我知道执行算术是这样写的......但是你明白我想要做什么吗?

这里很明显我做错了什么,我不太明白。在 bash 中,有人可以告诉我这里出了什么问题吗?

但是例如,如果你这样做,一切都会正常工作。

bash <(echo 'echo args: "$1$2"') domain.xyz 8000

帮助

【问题讨论】:

    标签: bash curl


    【解决方案1】:

    let 命令用于计算算术表达式,因此它无法将点(.)字符识别为有效输入,因为点(.)不是有效的算术运算符。

    所以,如果您想在变量中接受参数,请定义 then 而不像给定代码那样使用 let 关键字。

    a=$1
    b=$2
    
    echo $a
    echo $b
    

    【讨论】:

      猜你喜欢
      • 2015-07-12
      • 2012-12-29
      • 1970-01-01
      • 2011-06-06
      • 2016-12-21
      • 2021-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多