prun.sh 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. # !/bin/bash
  2. SEND_THREAD_NUM=2
  3. tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
  4. mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
  5. exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
  6. rm $tmp_fifofile
  7. for ((i=0; i<SEND_THREAD_NUM; i++));do
  8. echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
  9. done >&6
  10. CUTOFF_TIME=1000
  11. instance_dirs="bio col fb inf int rec ret sci soc tec web"
  12. all_results_dir=$1
  13. graph_dir="/home/pkutcs/graphs"
  14. if [ -d "$all_results_dir" ]
  15. then
  16. echo "warning: $all_results_dir exist"
  17. exit 0
  18. fi
  19. mkdir "$all_results_dir"
  20. for seed in $(seq 1 10)
  21. do
  22. echo "************* $seed *****************"
  23. for ins_dir in $instance_dirs
  24. do
  25. echo "$ins_dir"
  26. res_dir="$all_results_dir"/"$ins_dir"
  27. if [ ! -d "$res_dir" ]
  28. then
  29. mkdir "$res_dir"
  30. fi
  31. find "$graph_dir/$ins_dir" -maxdepth 1 -mindepth 1 |
  32. while read instance
  33. do
  34. read -u6
  35. {
  36. instance=$(basename "$instance")$
  37. res_dir="$res_dir"/"$instance"
  38. if [ ! -d "$res_dir" ]
  39. then
  40. mkdir "$res_dir"
  41. fi
  42. res_file="$res_dir"/"$instance"_$seed
  43. echo "$graph_dir/$ins_dir/$instance" "$CANDIDATE" "$seed" "$CUTOFF_TIME" > "$res_file"
  44. echo >&6
  45. } &
  46. done
  47. done
  48. done
  49. exit 0