我想为一个变量的公式结果和另一个变量的开头添加一个变量

我想为一个变量的公式结果和另一个变量的开头添加一个变量

这是有问题的文件名OD_Orders_2019-02-19.csv

我正在尝试创建一个 bash 脚本来读入文件名中包含昨天日期的文件,同时保留其余的文件名。我希望用$y公式输出来等于文件名,中间有确切的日期。到目前为止,这就是我所拥有的:

为了以正确的格式获取昨天的日期,我制作了 x:

x="date -d yesterday +%Y-%m-%d"

y="OD_Orders_$x.csv"

这个问题是当我做回声时的结果$y给了我这个: OD_Orders_date -d yesterday +%Y-%m-%d.csv

$x我需要正确显示when的值echo $y而不显示公式。我需要$y以正确的格式输入带有昨天日期的文件名,因为我想稍后在此脚本中更多地使用它。

答案1

你需要使用命令替换 $( ... )替换命令的输出而不是命令本身:

x="$(date -d yesterday +%Y-%m-%d)"
y="OD_Orders_${x}.csv"

当然可以简化为:

y="OD_Orders_$(date -d yesterday +%Y-%m-%d).csv"

相关内容