Blame Scripts/tcar_printHelp.sh

Alain Reguera Delgado 66223d
#!/bin/bash
Alain Reguera Delgado 66223d
######################################################################
Alain Reguera Delgado 66223d
#
Alain Reguera Delgado b33753
#   tcar - The CentOS Artwork Repository automation tool.
Alain Reguera Delgado b33753
#   Copyright © 2014 The CentOS Artwork SIG
Alain Reguera Delgado 66223d
#
Alain Reguera Delgado b33753
#   This program is free software; you can redistribute it and/or
Alain Reguera Delgado b33753
#   modify it under the terms of the GNU General Public License as
Alain Reguera Delgado b33753
#   published by the Free Software Foundation; either version 2 of the
Alain Reguera Delgado b33753
#   License, or (at your option) any later version.
Alain Reguera Delgado 66223d
#
Alain Reguera Delgado b33753
#   This program is distributed in the hope that it will be useful,
Alain Reguera Delgado b33753
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
Alain Reguera Delgado b33753
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Alain Reguera Delgado b33753
#   General Public License for more details.
Alain Reguera Delgado 66223d
#
Alain Reguera Delgado b33753
#   You should have received a copy of the GNU General Public License
Alain Reguera Delgado b33753
#   along with this program; if not, write to the Free Software
Alain Reguera Delgado b33753
#   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Alain Reguera Delgado 66223d
#
Alain Reguera Delgado b33753
#   Alain Reguera Delgado <al@centos.org.cu>
Alain Reguera Delgado b33753
#   39 Street No. 4426 Cienfuegos, Cuba.
Alain Reguera Delgado 66223d
#
Alain Reguera Delgado 66223d
######################################################################
Alain Reguera Delgado 66223d
Alain Reguera Delgado b33753
# Standardize the way tcar.sh script prints help about itself.
Alain Reguera Delgado 66223d
function tcar_printHelp {
Alain Reguera Delgado 66223d
Alain Reguera Delgado 66223d
    # Retrieve the man page name. This is the file name you want to retrieve
Alain Reguera Delgado 66223d
    # documentation for. This value is optional. When it is not passed, the
Alain Reguera Delgado 66223d
    # module name is used. 
Alain Reguera Delgado 66223d
    local TCAR_MANPAGE_NAME="${1:-${TCAR_MODULE_NAME}}"
Alain Reguera Delgado 66223d
Alain Reguera Delgado 66223d
    # When the module name has not been set and the tcar_printHelp
Alain Reguera Delgado 66223d
    # function is called from tcar.sh file, the page name come
Alain Reguera Delgado 66223d
    # with with --help as opening string and probably as
Alain Reguera Delgado 66223d
    # --help=filename.sh. In the first case it prints the script
Alain Reguera Delgado 66223d
    # documentation. In the second case it prints documentation for
Alain Reguera Delgado 66223d
    # the file specified.
Alain Reguera Delgado 66223d
    if [[ -z ${TCAR_MODULE_NAME} ]];then
Alain Reguera Delgado 66223d
        if [[ ${TCAR_MANPAGE_NAME} =~ '^--help=[[:alnum:]_-.]+' ]];then
Alain Reguera Delgado 66223d
            TCAR_MANPAGE_NAME=$(echo ${TCAR_MANPAGE_NAME} | cut -d'=' -f2)
Alain Reguera Delgado 66223d
        else
Alain Reguera Delgado b33753
            TCAR_MANPAGE_NAME=${TCAR_SCRIPT_NAME}
Alain Reguera Delgado 66223d
        fi
Alain Reguera Delgado 66223d
    fi
Alain Reguera Delgado 66223d
Alain Reguera Delgado 66223d
    # Print requested documentation. 
Alain Reguera Delgado 66223d
    /usr/bin/man -M ${TCAR_SCRIPT_DIR_MANUALS}:${TCAR_MODULE_DIR_MANUALS}/Final "${TCAR_MANPAGE_NAME}"
Alain Reguera Delgado 66223d
Alain Reguera Delgado 66223d
    # Finish script execution successfully.
Alain Reguera Delgado 66223d
    exit 0
Alain Reguera Delgado 66223d
Alain Reguera Delgado 66223d
}