Bash中的文件名无法正确打印,并带有下划线“ _”

发布于 2021-02-02 11:16:59

我正在用这个

DATE_FOLDER=$(date +"%b-%d-%a-%G")
FILENAME="HOME_$date1.tar.gz"

echo $BACKUP_DESTINATION/$DATE_FOLDER/$FOLDERNAME_$FILENAME

我的输出是

home/May-04-Wed-2011/HOME_May-04-0718PM-2011.tar.gz

但是如果我用 -下划线代替_

echo $BACKUP_DESTINATION/$DATE_FOLDER/$FOLDERNAME-$FILENAME

那我的输出是正确的

/home/May-04-Wed-2011/vmware-HOME_May-04-0717PM-2011.tar.gz

这是为什么?

关注者
0
被浏览
234
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    _是变量名的有效字符,并且$FOLDERNAME_不存在。

    echo "$BACKUP_DESTINATION/$DATE_FOLDER/${FOLDERNAME}_$FILENAME"
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看