ns-3シミュレーターのドキュメントでは、簡単な bash 関数を提供して生活を楽にしています。
function waff {
CWD="$PWD"
cd $NS3DIR
./waf --cwd="$CWD" $*
cd -
}
この関数は、ns-3 ルート フォルダーにある./wafプログラムを実行することになっていますが、実際にはフォルダー内にあります。
したがって、~/project$ waff --run first
wafの場合、 ~/projectフォルダー内の最初のスクリプトが実行されます。
しかし、スクリプトのコマンドに 1 つのパラメータを追加してシミュレーションを実行しようとすると~/project$ waff --run "first --PrintHelp"
、エラーがスローされます
waf: error: no such option: --PrintHelp
.
waff関数を使用せずにルートフォルダーから実際にスクリプトを実行した場合にのみ機能します。
$* をダブルコンマ間の引数に展開するように関数を変更する方法は?