bash 脚本中 mkdir 创建的无法访问的目录

Unaccessible directory created by mkdir in bash script

当我在 bash 脚本中使用 mkdir 时,我无法在终端访问创建的目录。

#!/bin/bash

date=`date --rfc-3339="date" --date='1 days ago'`
date=${date//"-"/""}
mkdir -p ⁠$date --verbose
touch $date/foe

当我在终端中使用 mkdir 时,一切正常。 这是我得到的错误:touch: impossible de faire un touch « 20150518/foe »: Aucun fichier ou dossier de ce type 我尝试使用引号和不使用引号。 我做错了什么?

如果,你想要

+YYYYMMDD
  foe
date=`date --rfc-3339="date" --date='1 days ago'`
date=${date//"-"/""}
mkdir $date --verbose #remove -p option
touch $date/foe

或使用-p选项,如果存在则不会出错,

date=`date --rfc-3339="date" --date='1 days ago'`
date=${date//"-"/""}
mkdir -p "$date/" --verbose #with -p option, add / symbol (quotes aren't mandatory)
touch $date/foe

如果,你想要

+YYYY
  +MM
    +DD
      foe
date=`date --rfc-3339="date" --date='1 days ago'`
date=${date//"-"/"/"}
mkdir -p $date --verbose
touch $date/foe