2015-05-19 77 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

它的工作原理!我相信這是引用它和「\」。非常感謝 ! –