我有一个调用另一个shell脚本的shell脚本。其中一个参数是输出文件名,我想用时间戳作为前缀。到目前为止,我一直在这样做:
#!/bin/bash -e
bash resign "$(date +%Y%m%d)_UI_Touch_SU_test_$version.ipa"
这很好用。生成的文件名为20151029_UI_Touch_SU_test_21.6.5212.ipa
。但是我想进一步自定义文件名并有一个日期变量:
#!/bin/bash -e
timestamp=$(date +%Y%m%d)
bash resign "$timestamp_UI_Touch_SU_test_$version.ipa"
这不起作用。生成的文件名为21.6.5212.ipa
。如何正确设置日期变量?
答案 0 :(得分:5)
尝试
bash resign "${timestamp}_UI_Touch_SU_test_${version}.ipa"
您需要{}
来区分字符串其余部分的变量。
编辑:注意,$version.ipa
也可以在没有花括号的情况下工作,因为点.
不是bash中的有效变量字符(相反,下划线_
是)。但是,我认为在那里使用花括号也是一种好习惯。