################################################################# # env_version_ss.sh - Produce a CSV file showing the propagation # of environment programs across every environment on a given # machine. # J. David Schronce - Tue May 15 09:33:19 CDT 2007 ################################################################# #set -xv outdir=/tmp outfile=$outdir/Environment_compare.csv date > $outfile # Uses the 'env_versions.sh' script to generate it's data files echo "Processing Environments..." ./env_versions.sh $outdir # build CSV echo "Building Comparison Spreadsheet..." cd /$outdir # Add Header header="" for filename in `ls *.env.csv` do env=`echo $filename | cut -d"." -f1` # Swap the '#' on the following 2 lines if you are using timestamps with env_versions.sh # header="$header, $env ,, " header="$header, $env , " done echo "$header" >> $outfile # Add programs #for program in `cat *.env.csv | cut -d, -f1 | sort -u ` for program in `cat *.env.csv | sed 's/ //g' | sort -u ` do line="" for filename in `ls *.env.csv` do # Process environments where the file does not exist if [ `grep $program $filename | wc -l` -eq 0 ]; then line="$line , ," else line="$line , `grep $program $filename | head -1`" fi done echo ".\c" echo "$line" >> $outfile done echo "\n\n Your Environment Comparison Report for `hostname`\nis in $outfile\n"