#/bin/csh -f # # bak feb 2009 before jc031 jc032 # quick and dirty inefficient csh script in case nerc system env_clean doesn't exist set v = "$1" set v1 = `echo $v | sed 's/ /:/g'` set v1 = `echo $v | sed 's/:/ /g'` if (-e /nerc/bin/env_clean) then set v2 = `echo $v1 | sed 's/ /:/g'` echo `env_clean $v2` exit endif set fn = ./wk_envclean_$$_$$ echo "$v1" | awk '{for (i = 1;i<=NF;i=i+1) printf("%s\n",$i)}' > $fn set numv = `wc -l $fn | awk '{print $1}'` set newv = '' set fn2 = ./wk2_envclean_$$_$$ touch $fn2 set k = 0 while ($k < $numv) @ k = $k + 1 set v2 = `head -$k $fn | tail -1` # if ($v2 == ".") then # egrep -e "\." $fn2 > /dev/null # if ($status != 0) then # echo $v2 >> $fn2 # set newv = ($newv $v2) # endif # else # grep $v2 $fn2 > /dev/null # if ($status != 0) then # echo $v2 >> $fn2 # set newv = ($newv $v2) # endif set match = 0 set numf2 = `wc -l $fn2 | awk '{print $1}'` set k2 = 0 while ($k2 < $numf2) @ k2 = $k2 + 1 set v3 = `head -$k2 $fn2 | tail -1` if ($v3 == $v2) then set match = 1 endif end if ($match == 0) then echo $v2 >> $fn2 set newv = ($newv $v2) endif # endif end set newenv = `echo $newv | sed 's/ /:/g'` echo $newenv /bin/rm $fn $fn2