在github上找到一个常见的用于下载文件的脚本download.sh,其中有这样一行
result_dir="$1"
事实上这一行要结合后续使用的命令来理解。
$1 表示命令的第二个参数
就比如说后来输入了一个这样的运行命令
python main.py --video_file data/videos/a.mp4 --path results/a --camera_params "fx,fy,cx,cy" --camera_model "SIMPLE_PINHOLE" --make_video
那么$1指代的就是 --path results/a 参数中的 results/a 这个路径,那么原始代码的意思是就是
result_dir= results/a
这种相对路径的使用可以方便用户二次开发,只需要在指令中设置需要存储的路径,就可以自动同步,不需要去源文件中修改。
为什么会被这样的问题困扰呢....是因为那个download.sh 的脚本我死活运行不了,只好进行手动下载,
手动下载的过程中没有意识到$1的意思,理所当然的将一个本该在二级目录下的文件下载到了一级目录,导致后续程序无法运行。
又栽在路径上我也是傻的可以= =