2011-11-15 22 views
1

我想檢查目錄的存在並編寫下面的腳本,但這不起作用。確認主目錄下的目錄是否存在

#!/bin/sh 
if [ -d "~/sample" ] 
then 
    echo 'exists' 
else 
    echo 'NOT exists' 
fi 

下面的腳本可以工作。

#!/bin/sh 
if [ -d "/home/user01/sample" ] 
then 
    echo 'exists' 
else 
    echo 'NOT exists' 
fi 

if [ -d "~/sample" ]有什麼問題嗎?

回答

2

是雙引號是什麼不讓〜擴張......下面的工作:

if [ -d ~"/sample" ]; then 
    echo "exists" 
fi 

它通常是更好地使用:

if [ -d "$HOME/sample" ] ; then 
    echo "exists" 
fi 

$ HOME通常設置by Bourne shells

+0

哦,$ HOME很好。我會用它。謝謝! – a2hiro