tcar_checkFiles(1) ================== == Name tcar_checkFiles - Standardize constructions for file verifications. == Synopsis *cli_checkFiles [-d|-e|-f|-h|-x] LOCATION* == Description The *cli_checkFiles* exists to answer basic questions like ``Is +LOCATION+ is a regular file?'' and ``Is +LOCATION+ a directory?''. The answer to such questions affects the script execution flow in the following way: when the answer positive (e.g., +LOCATION+ is a regular file), the script passes the test silently and continues its execution. When the answer is negative(e.g., +LOCATION+ is not a regular file), the script finishes its execution immediately with an error message. The *cli_checkFiles* function is exported to *centos-art.sh* script environment in the very beginning of its execution and will be available all along its execution lifetime. You can use this function inside common and specific functions whenever you need to verify files inside the The CentOS Artwork Repository. The *cli_checkFiles* function is available inside the *centos-art.sh* script only as part of its execution environment. This function is exported to *centos-art.sh* script just after executing the script from the command-line and will be available all along the script lifetime. So, you can use this function both in common and specific functionalities of centos-art.sh script. The *cli_checkFiles* function doesn't create subsequent execution environments. == Usage Use the *cli_checkFiles* function inside *centos-art.sh* script whenever you need to control the script execution flow based on file type (e.g., regular files, directories, links, etc.) verifications. == Options The *cli_checkFiles* function accepts the following options: -d:: Verifies whether +LOCATION+ exists and is a directory. If it doesn't exists or isn't a directory, an error message is printed and the script finishes its execution. Otherwise, if it exists and is a directory, the script continues its execution normally. -e:: Verifies whether +LOCATION+ exists or not. If it doesn't exist, an error message is printed and the script finishes its execution. Otherwise, if it does exists, the script continues its execution normally. -f:: Verifies whether +LOCATION+ exists and is a regular file. If it doesn't exists or isn't a regular file, an error message is printed and the script finishes its execution. Otherwise, if it exists and is a regular file, the script continues its execution normally. -h:: Verifies whether +LOCATION+ exists and is a symbolic link. If it doesn't exists or isn't a symbolic link, an error message is printed and the script finishes its execution immediately. Otherwise, if it does exist and is a symbolic link, the script continue its execution normally. -x:: Verifies whether +LOCATION+ exists and execution permission is granted. If it doesn't exist or hasn't execution permission, the script finishes its execution immediately. Otherwise, if it exists and has execution permissions, the script continues its execution normally. The value of the +LOCATION+ argument must be an absolute path to the file you want to verify. If such file doesn't exists in any supported form, the script finishes its execution with an error message. == Examples The following example was taken from *centos-art.sh* script initialization phase. Notice the position of *cli_checkFiles* function inside the loop. If some of the function files we need to export doesn't have execution rights, *cli_checkFiles* will finish the script execution immediately with an error message. ---------------------------------------------------------------------- for FUNCFILE in ${FUNCFILES};do # Verify the execution rights for function file. cli_checkFiles -x ${FUNCFILE} # Initialize the function file. . ${FUNCFILE} # Export the function names inside the file to current shell # script environment. export -f $(egrep "${PATTERN}" ${FUNCFILE} | gawk '{ print $2 }') done ---------------------------------------------------------------------- == Bugs See https://centos.org.cu/bugs/ == Authors The *tcar_checkFiles* function has received contributions from the following people: - Alain Reguera Delgado , =COPYRIGHT_YEAR_LIST= == License Copyright (C) =COPYRIGHT_YEAR_LIST= =COPYRIGHT_HOLDER= This program 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. This program 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 this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. // vim: set syntax=asciidoc: