From a1abae11b7c425a1cba2777ec2736f7d0a3b522d Mon Sep 17 00:00:00 2001 From: Alain Reguera Delgado Date: Nov 25 2010 17:44:53 +0000 Subject: Update shell functionality: - Rename OPTIONNAM and OPTIONVAL variable names to ACTIONNAM and ACTIONVAL respectively. - Inside shell_updateCopyright function, add positional parameters interpretation using getopt(1), re-define regular expression to match shell files only, define list of files to process. --- diff --git a/Scripts/Bash/Functions/Shell/shell.sh b/Scripts/Bash/Functions/Shell/shell.sh index 1138463..40a17d2 100755 --- a/Scripts/Bash/Functions/Shell/shell.sh +++ b/Scripts/Bash/Functions/Shell/shell.sh @@ -26,23 +26,9 @@ function shell { + # Define variables. local FILES='' - # Define list of files to process using option value as reference. - if [[ -d $OPTIONVAL ]];then - FILES=$(find $OPTIONVAL -regextype posix-egrep -type f -regex "^${REGEX}\.sh$") - elif [[ -f $OPTIONVAL ]];then - FILES=$OPTIONVAL - fi - - # Check list of files to process. If list of files is empty there - # is nothing to do except to print a message and end script - # execution. - if [[ $FILES == '' ]];then - cli_printMessage "`gettext "There is no file to process."`" - cli_printMessage "$(caller)" 'AsToKnowMoreLine' - fi - # Define command-line interface. shell_getActions diff --git a/Scripts/Bash/Functions/Shell/shell_getActions.sh b/Scripts/Bash/Functions/Shell/shell_getActions.sh index 6b91e47..ca12b5f 100755 --- a/Scripts/Bash/Functions/Shell/shell_getActions.sh +++ b/Scripts/Bash/Functions/Shell/shell_getActions.sh @@ -29,7 +29,7 @@ function shell_getActions { # Evaluate option name and define which actions does centos-art.sh # script supports. - case $OPTIONNAM in + case $ACTIONNAM in '--update-copyright' ) # Update copyright note inside top comments. diff --git a/Scripts/Bash/Functions/Shell/shell_updateCopyright.sh b/Scripts/Bash/Functions/Shell/shell_updateCopyright.sh index bee26ed..01e02cc 100755 --- a/Scripts/Bash/Functions/Shell/shell_updateCopyright.sh +++ b/Scripts/Bash/Functions/Shell/shell_updateCopyright.sh @@ -121,6 +121,38 @@ function shell_updateCopyright { done + # Define short options we want to support. + local ARGSS="" + + # Define long options we want to support. + local ARGSL="filter:" + + # Parse arguments using getopt(1) command parser. + cli_doParseArguments + + # Reset positional parameters using output from (getopt) argument + # parser. + eval set -- "$ARGUMENTS" + + # Define action to take for each option passed. + while true; do + case "$1" in + --filter ) + REGEX="$2" + shift 2 + ;; + * ) + break + esac + done + + # Re-define regular expression to match shell files only. + REGEX=$(echo "${REGEX}\.(bash|shell|sh)") + + # Define list of files to process. + cli_getFilesList + + # Process list of files. for FILE in $FILES;do # Output action message.