2015-05-19 83 views
2

当我在bash脚本中使用mkdir时,无法访问终端中创建的目录。由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 我试过用引号和没有。 我做错了什么?

+0

'$ data'的内容是什么? – fedorqui

+0

提示:'echo“[$ date]”'和'ls -lQ' – bishop

回答

1

如果你想

 
+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 
+0

它的工作原理!我相信这是引用它和“\”。非常感谢 ! –