要寫一個script 目標是要產生參數為檔名的資料夾
ex. sh filecreat add aa
我就要在一個 ~/.r/ 下面產生aa的資料夾
#!/bin/bash
if [ $1 = add ];
then
namelist=$`find ~/.r |cut -d '/' -f 5`
for name in $namelist
do
if [ $2 = $name ];
then
echo "Wrong"
exit 1
fi
done
`mkdir ~/.r/$2`
fi
echo "GJ"
exit 0
如果$2 這個資料夾名稱已經存在 exit 1
但是我在 namelist=$`find ~/.r |cut -d '/' -f 5` 就發生錯誤
錯誤訊息是沒有~/.r 這個資料夾或是檔案
所以mkdir ~/.r/$2 也是錯的
請問我有哪個地方弄混了呢?
還有 就是請問資料夾名稱有辦法有空白嗎?
剛遇到另一個問題
如果有一行command是
echo "abc"|sh myscript aaa bbb
aaa在script對應到 $1
bbb對應到 $2
那 "abc"是對應到 $3嗎
--
ex. sh filecreat add aa
我就要在一個 ~/.r/ 下面產生aa的資料夾
#!/bin/bash
if [ $1 = add ];
then
namelist=$`find ~/.r |cut -d '/' -f 5`
for name in $namelist
do
if [ $2 = $name ];
then
echo "Wrong"
exit 1
fi
done
`mkdir ~/.r/$2`
fi
echo "GJ"
exit 0
如果$2 這個資料夾名稱已經存在 exit 1
但是我在 namelist=$`find ~/.r |cut -d '/' -f 5` 就發生錯誤
錯誤訊息是沒有~/.r 這個資料夾或是檔案
所以mkdir ~/.r/$2 也是錯的
請問我有哪個地方弄混了呢?
還有 就是請問資料夾名稱有辦法有空白嗎?
剛遇到另一個問題
如果有一行command是
echo "abc"|sh myscript aaa bbb
aaa在script對應到 $1
bbb對應到 $2
那 "abc"是對應到 $3嗎
--
All Comments