我是ns3的新手。我有一些用 C++ 编写的简单程序。
我通过以下命令运行我的 ns3 程序
exec "`dirname "$0"`"/../../waf "$@"
任何人都可以解释上述行的功能吗?
dirname "$0"
获取包含命令的文件的目录名。
"`dirname "$0"`"/../../waf
附加/../../waf
到由 获得的结果dirname "$0"
。
因此,如果您/some/arbitray/path
从上一个命令中获得,这将返回/some/arbitray/path/../../waf
exec "`dirname "$0"`"/../../waf "$@"
用上面获得的命令替换 shell,并将传递给包含原始命令的脚本的参数传递。
例如,如果您的命令位于目录中包含的文件中,/d1/d2/d3/d4/d5
并且您通过以下方式执行它:
sh myfile foo bar "foo bar"
那么正在执行的命令将是:
/d1/d2/d3/d4/d5/../../waf foo bar "foo bar"