for ((i=0; i<=8; i++))
do
{
XXXXXX
}&
done
Note:主要就是对for循环中要执行的命令,用{}&包含起来,注意是大括号+&,不要少了&(没打错)。
参考如下:
shell中如何实现多线程_丷刘大胆儿的博客-CSDN博客_shell 多线程
2、实现多变量循环list0=${data_dir}list/test_split/test0_normal.txt
list1=${data_dir}list/test_split/test1_crowd.txt
list2=${data_dir}list/test_split/test2_hlight.txt
list3=${data_dir}list/test_split/test3_shadow.txt
list4=${data_dir}list/test_split/test4_noline.txt
list5=${data_dir}list/test_split/test5_arrow.txt
list6=${data_dir}list/test_split/test6_curve.txt
list7=${data_dir}list/test_split/test7_cross.txt
list8=${data_dir}list/test_split/test8_night.txt
list=($list0 $list1 $list2 $list3 $list4 $list5 $list6 $list7 $list8)
out0=./output/out0_normal.txt
out1=./output/out1_crowd.txt
out2=./output/out2_hlight.txt
out3=./output/out3_shadow.txt
out4=./output/out4_noline.txt
out5=./output/out5_arrow.txt
out6=./output/out6_curve.txt
out7=./output/out7_cross.txt
out8=./output/out8_night.txt
out=($out0 $out1 $out2 $out3 $out4 $out5 $out6 $out7 $out8)
for((i=0; i<=8; i++))
do
{
./evaluate -a $data_dir -d $detect_dir -i $data_dir -l ${list[i]} -w $w_lane -t $iou -c $im_w -r $im_h -f $frame -o ${out[i]}
}&
done
wait
cat ./output/out*.txt>./output/${exp}_iou${iou}_split.txt
Note:
1)把多个变量放到一个数组中,注意使用$
2)注意命令中的对数组成员的正确引用${list[i]}
参考如下:
linux shell遍历多个数组_HackerTom的博客-CSDN博客_shell 多个数组
3、Linux 中使用的GPU的指定这个在python中经常用到,例如CUDA_VISIBLE_DEVICES=1 python run_file.py。
但这里说的CUDA_VISIBLE_DEVICES=1,该命令不仅适用于执行python文件的情况,而且是适用于linux所有执行文件的情况下,例如执行shell脚本,CUDA_VISIBLE_DEVICES=2 ./autotest_culane.sh enet_baseline_culane test ./output。(该shell脚本中调用cmd来执行含有opencv代码的可执行程序)
因此,这里说是Linux中使用GPU的指定。
Over!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)