2011-08-12 71 views
0

我使用以下腳本使用ns2中的setdest實用程序生成多個方案,但腳本無法運行,任何人都可以幫助我解決這個問題,這很緊急,我發佈了很多的地方,但沒有幫助一直there.please幫我這個劇本使用shell腳本在ns2中運行多個模擬

#!/bin/bash 

dest_dir="movement" 

if [ -d $dest_dir ] 
then 
     # Do nothing 
     echo "'$dest_dir' is a directory" 
else 
     echo "Creating directory $dest_dir"; 
     mkdir --verbose $dest_dir 
fi 

setdest_loc="/home1/ns/ns-allinone-2.34/ns-2.34/indep-utils/cmu-scen-gen/setdest/setdest"; 

if [ -x $setdest_loc ] 
then 
     # Do nothing 
     echo "$setdest_loc is executable" 
else 
     echo "$setdest_loc does not exist or is not executable"; 
     exit; 
fi 

# Create the scenarios 

for i in 0 10 20 40 100 
do 
     $setdest_loc -v 1 -n 25 -p $i -M 20 -t 100 -x 500 -y 500 > $dest_dir/scen-25-$i 
done 

echo "" 
echo "Created the following files" 
echo "" 
ls -la $dest_dir/scen-25* 

它只是相呼應的,如果條件setdest不可執行

我們使用setdest中的目錄這樣

./setdest setdest ,那麼爲什麼這不起作用,我該如何在這個shell腳本中編寫./setdest。?

+0

將'set -x'放置在腳本的頂部,以查看腳本實際在做什麼。如果您需要更多建議,請在此發佈結果 –

回答

0

做一個

ls -l /home1/ns/ns-allinone-2.34/ns-2.34/indep-utils/cmu-scen-gen/setdest/setdest 

輸出是否顯示該腳本是可執行的,就像

-rwxr-xr-x 1 umair Administrators 238 Aug 11 09:40 setdest 
#--^--^--^ 

至少有一個「X」必須爲腳本中設置有執行的機會。

如果沒有,那麼你需要更改權限

chmod 755 /home1/ns/ns-allinone-2.34/ns-2.34/indep-utils/cmu-scen-gen/setdest/setdest 

如果這不回答你的問題,編輯您的問題,包括上面指定的ls -l ...命令的輸出。

我希望這會有所幫助。

P.S.因爲你似乎是一個新用戶,如果你得到一個可以幫助你的答案,請記住將它標記爲已接受,並且/或者給它一個+(或 - )作爲有用的答案。