X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=banner.sh;h=5c92c5c48d4ca7ecd30cb7cd93da94a0454ff049;hb=25ca6519de3948bb7fc490705e395c4eef164d9f;hp=0b30b2a55147f8bb9d4c082d8a423dfd2e62aee8;hpb=bbb3b084019fb1fa80d52b7d4bd67190318d7598;p=packages%2Frpm.git diff --git a/banner.sh b/banner.sh index 0b30b2a..5c92c5c 100644 --- a/banner.sh +++ b/banner.sh @@ -64,24 +64,24 @@ Help() --all - all banners --delete - delete wanted banners -e ---exclude - exclude following banners (usefull with -a) +--exclude - exclude following banners (useful with -a) -h ---help - shows this help +--help - show this help -i ---include - cancels effect of -e (EXCLUDED banners will remain excluded) +--include - cancel effect of -e (EXCLUDED banners will remain excluded) -m ---make - makes a brand-new banner named as following para [1] (from stdin) +--make - make a brand-new banner named as following parameter [1] (from stdin) -M - same as above, but append if file exists -n ---names - shows names of the banners ---newer - all choosen banners should be newer than following para in seconds ---older - all choosen banners should be older than following para in seconds +--names - show names of the banners +--newer - all choosen banners should be newer than following parameter in seconds +--older - all choosen banners should be older than following parameter in seconds -s ---show - shows wanted banners +--show - show wanted banners --stderr - send banner to stderr instead of stdout (or other) --stdout - send banner to stdout instead of stderr (or other) -u ---usage - shows short help +--usage - show short help [1] - if there will be no slash ('/') in name then config dir will be used, else -- specified. @@ -94,10 +94,7 @@ Unknown parameter $1 EOF Help } -check_banner_name() -{ - echo "$1"|sed 's,.*/,,' -} + check_banners_mtime() { BANNERS="$1" @@ -145,14 +142,17 @@ make_banner() { BANNER="$1" SHOW="$2" - mkdir -p $(echo $BANNER|sed 's,/[^/]*$,,') + if [ ! -d "${BANNER%/*}" ]; then + mkdir -p "${BANNER%/*}" + fi + data=$(cat) if [ $NEW_APPEND -eq 0 ]; then - cat > $BANNER + echo "$data" > $BANNER else - cat >> $BANNER + echo "$data" >> $BANNER fi if [ $SHOW -eq 1 ];then - cat $BANNER + echo "$data" fi } show_banner() @@ -187,8 +187,8 @@ while [ ! -z $1 ]; do ;; -m|--make|-M) NEED_BANNER_LIST=0 - if [ "$(check_banner_name $2)" == "$2" ]; then - NEW_BANNER=$BANNERDIR/$(check_banner_name "$2") + if [[ $2 != */* ]]; then + NEW_BANNER="$BANNERDIR/${2##*/}" else NEW_BANNER="$2" fi @@ -247,9 +247,9 @@ while [ ! -z $1 ]; do ;; *) if [ $EXCLUDE_FLAG -eq 0 ];then - BANNERS="$BANNERS $(check_banner_name $1)" + BANNERS="$BANNERS ${1##*/}" else - NOBANNERS="$NOBANNERS $(check_banner_name $1)" + NOBANNERS="$NOBANNERS ${1##*/}" fi ;; esac