4 echo Usage: dcm_sort_by_field.sh \"field name\"
7 [ -d sorted ] && rm -r sorted
8 find . -type f -iname "*.dcm" > dicom_files
10 total=$(wc -l dicom_files)
12 cat dicom_files | while :
16 while [ $jobrunning -lt $conc_jobs ]
18 read i || { wait; break 2; }
20 name="$(clitkDicomInfo "$i" | grep "$1" | head -n 1 | sed "s/.*\[//;s/.$//;s/ /_/g")"
21 [ -z "$name" ] && echo "Warning: key not found in file $i" 1>&2 && exit 1 #don't do anything if dicom key not found
22 name=`echo "$name" | sed 's/\//_/g'`
23 name=`echo "$name" | sed 's/\\\/_/g'`
24 name=`echo "$name" | sed 's/\*/_/g'`
25 [ -d "sorted/$name" ] || mkdir "sorted/$name" 2>>/dev/null
26 basename=$(basename "$i")
27 cp -l "$i" "sorted/$name/$basename"
29 jobrunning=$(( $jobrunning + 1 ))
31 finished=$(( $finished + $conc_jobs ))
32 echo -e -n "( $finished / $total )\r"