bash:根据两个环境变量命名文件

时间:2015-02-02 22:46:51

标签: bash

在我的bash脚本中,我想根据两个环境变量命名一个文件,这些变量可能会根据用户设置而改变。例如,我有:

JOB_NAME=some_job
DATE=$(date +"%Y%m%d%H%M")

我希望命名我的文件:

FILE_NAME=$JOB_NAME_$DATE.log

即我希望文件名看起来像:some_job_201502021544.log

但是,文件名显示为201502021544.log。

你可以帮帮我吗?谢谢

2 个答案:

答案 0 :(得分:2)

结尾_包含在变量名称中,因此它正在寻找" $ JOB_NAME _"它不存在,所以你得到一个空字符串。您可以使用大括号(FILE_NAME="${JOB_NAME}_${DATE}.log"

)进行分隔

答案 1 :(得分:1)

您需要将第一个变量括在花括号中:

FILE_NAME=${JOB_NAME}_$DATE.log