小编Gpp*_*094的帖子

为什么我的 bash 脚本无法识别 date 命令中的变量?

如果我在 bash 脚本的函数中执行此行,它将成功运行:

function myFnc(){
...
variable1=$(date -d 2021-01-01 +%W)
...
}
Run Code Online (Sandbox Code Playgroud)

但是如果我通过运行传递“2021”作为输入参数

myBash.sh '2021'
Run Code Online (Sandbox Code Playgroud)

如果我用相应的变量替换年份,则会收到错误“日期:日期无效#-01-01”:

function myFnc(){
...
variable1=$(date -d $1-01-01 +%W)
...
}
Run Code Online (Sandbox Code Playgroud)

使用引号也没有帮助:

function myFnc(){
...
variable1=$(date -d "$1-01-01" +%W)
...
}
Run Code Online (Sandbox Code Playgroud)

关于如何解决它有什么想法吗?提前致谢!

bash positional-parameter

0
推荐指数
1
解决办法
157
查看次数

标签 统计

bash ×1

positional-parameter ×1