#!/bin/sh #------------------------------------------------------------------------------ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | # \\ / A nd | Copyright held by original author # \\/ M anipulation | #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM. # # OpenFOAM is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation; either version 2 of the License, or (at your # option) any later version. # # OpenFOAM is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License # for more details. # # You should have received a copy of the GNU General Public License # along with OpenFOAM; if not, write to the Free Software Foundation, # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # Script # foamUpdateCaseFileHeader # # Description # Updates the header of application files. # By default, writes current version in the header. # Alternatively version can be specified with -v option. # Also removes consecutive blank lines from file. # #------------------------------------------------------------------------------ foamVersion=$WM_PROJECT_VERSION usage() { cat< ... options: -v VER specifies the version to be written in the header -h help Updates the header of application files and removes consecutive blank lines. By default, writes current OpenFOAM version in the header. An alternative version can be specified with the -v option. USAGE exit 1 } printHeader() { cat<
/dev/null 2>&1) then echo "Updating case file: $caseFile" sed -n '/FoamFile/,/}/p' $caseFile > FoamFile.tmp FORMAT=$(FoamFileAttribute format FoamFile.tmp) CLASS=$(FoamFileAttribute class FoamFile.tmp) NOTE=$(FoamFileAttribute note FoamFile.tmp) LOCATION=$(FoamFileAttribute location FoamFile.tmp) OBJECT=$(FoamFileAttribute object FoamFile.tmp) printHeader > FoamFile.tmp sed '1,/}/d' $caseFile | sed '/./,/^$/!d' | sed 's/ *$//g' >> FoamFile.tmp #sed '1,/}/d' $caseFile >> FoamFile.tmp # use cat to avoid removing/replace soft-links [ -s FoamFile.tmp ] && cat FoamFile.tmp >| $caseFile rm -f FoamFile.tmp 2>/dev/null else echo " Invalid case file: $caseFile" 1>&2 fi done #------------------------------------------------------------------------------