openfoam/wmake/wcleanLnIncludeAll
mark 9e2e111518 STYLE: adjust ordering of 'find' command arguments
- use -name test before -type test to avoid calling stat(2) on every file.
- use -delete instead of -exec rm to avoid forking
2017-02-21 19:19:04 +01:00

70 lines
2.1 KiB
Bash
Executable File

#!/bin/sh
#------------------------------------------------------------------------------
# ========= |
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
# \\ / O peration |
# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
# \\/ 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 3 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, see <http://www.gnu.org/licenses/>.
#
# Script
# wcleanLnIncludeAll
#
# Usage
# wcleanLnIncludeAll [dir1 [..dirN]]
#
# Description
# Delete all the lnInclude directories in the tree.
#
#------------------------------------------------------------------------------
if [ "$#" -eq 0 ]
then
# Default is to search the CWD
set -- .
elif [ "$1" = "-h" -o "$1" = "-help" ]
then
exec 1>&2
cat<<USAGE
Usage: ${0##*/} [dir1 [..dirN]]
* Remove all lnInclude directories found in the tree
USAGE
exit 1
fi
#------------------------------------------------------------------------------
# Search for all lnInclude directories and delete them
#------------------------------------------------------------------------------
for dir
do
if [ -d "$dir" ]
then
echo "removing lnInclude directories: $dir"
find $dir -depth -name lnInclude -type d -delete
else
echo "no directory: $dir" 1>&2
fi
done
exit 0 # clean exit
#------------------------------------------------------------------------------