使用shell脚本在ns2中运行多个模拟

时间:2011-08-12 18:16:12

标签: shell simulation ns2

我使用ns2中的setdest实用程序使用以下脚本生成多个方案,但脚本无效。

#!/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*

它只是回应if条件setdest不可执行

我们以这种方式使用setdest

在setdest目录中的

./setdest,为什么这不起作用我怎样才能在这个shell脚本中编写./setdest。?

1 个答案:

答案 0 :(得分: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。因为您似乎是新用户,如果您得到的答案可以帮助您,请记住将其标记为已接受,并且/或者给它一个+(或 - )作为有用的答案。