Grep log file

From relax wiki
Jump to: navigation, search

The following describes how to convert a relax log file into a relax script.

Grep the log file for commands

First we find which commands relax has performed, and separate into the different fitting models.
We also just make some line space and important points.

Then we replace instances of relax> with empty, and comment out the model line.

Put this into a file:

#!/bin/tcsh -f
set LOGS=`ls -v -d -1 *.log`
foreach LOG ( ${LOGS} )
set BNAME=`basename $LOG .log`
set OUT="grep_${BNAME}.py"
egrep -wi --color 'relax>| model -' $LOG > $OUT ;
sed -i "s/relax> //" $OUT ;
sed -i 's/^- /\n#- /' $OUT ;
sed -i 's/^minimise(/\nminimise(/' $OUT ;
sed -i 's/^script(/\n#script(/' $OUT ;
sed -i 's/^results.write(/\nresults.write(/' $OUT ;
sed -i 's/^model_selection(/\nmodel_selection(/' $OUT ;
sed -i '0,/spectrum.replicated(/s//\nspectrum.replicated(/' $OUT ;
sed -i '0,/spectrum.read_intensities(/s//\nspectrum.read_intensities(/' $OUT ;

Make it executable

chmod +x

End then execute it

# OR

Then look out for files starting with grep_.

See also

Sed one-liners