LINUX.ORG.RU
ФорумTalks

Вывод скрипта покажите

 , , ,


0

1

сам скрипт «tag»

#!/bin/sh
#
#TAG=ttt
TAG=$1
if [  -z "$1" ] ;then
    echo "Error: \"\$TAG\" is empty" 
    echo "Usage: ./tag TAG_NAME" && exit
fi
ALL=`find /var/log/packages| wc -l`
if [ "$ALL" = 0 ] ;then
    echo "Error: \"\$ALL\" is empty" 
    echo "Resume: не Слака " && exit
fi
MY=`find /var/log/packages| grep $TAG | wc -l`
if [  "$MY" = 0 ] ;then
    echo "Error: \"\$MY\" is empty" 
    echo "Resume: не Слакварщик " && exit
fi
echo $((100*$MY/$ALL))"%"
FULL=79
NUM=`echo $(($FULL*$MY/$ALL))`
for ((a=0;a<=$FULL;a++));do
    printf \|
done
echo ""
printf 8
for ((b=1;b<=`echo $(($NUM-1))`;b++));do
    printf \=
done
printf \>
echo ""
__________________________________________________________

Мой вывод

27%
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8====================>

«Resume: не Слака »

и потом оно делает rm -rf / ? ))

Bad_ptr ★★★★★
()

2% |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 8=>

Я всё больше слакбилдами.

Cooler ★★★★
()

8=====o (_*_)

Резюме: Гента.

tiandrey ★★★★★
()

Прошу простить - был трезв ;-)

#!/bin/bash
#
#TAG=ttt
TAG=$1
if [  -z "$1" ] ;then
    echo "Error: \"\$TAG\" is empty" 
    echo "Usage: ./tag TAG_NAME" && exit
fi
ALL=`find /var/log/packages| wc -l`
if [ "$ALL" = 0 ] ;then
    echo "Error: \"\$ALL\" is empty" 
    echo "Resume: не Слака " && exit
fi
MY=`find /var/log/packages| grep $TAG | wc -l`
if [  "$MY" = 0 ] ;then
    echo "Error: \"\$MY\" is empty" 
    echo "Resume: не Слакварщик " && exit
fi
echo $((100*$MY/$ALL))"%"
FULL=79
NUM=$(($FULL*$MY/$ALL))
for ((a=0;a<=$FULL;a++));do
    printf \|
done
echo ""
printf 8
for ((b=1;b<=$NUM-1;b++));do
    printf \=
done
printf \>
echo ""

ещё комментарии ?

botrops-schlegelii ★★
() автор топика
$ ./xx.sh ga
23%
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8=================>
GArik ★★★
()
Ответ на: комментарий от Deleted

Не перевелись ещё дистрибутивы с /bin/sh -> /bin/bash, чтоб их.

GotF ★★★★★
()
Ответ на: комментарий от IPR

А чем не нравиться ?
Что используется отдельная утилита, а не сам шелл ?
Или что достаточно «echo» - так может я туда хотел вставить, что-то вроде «_______________________», но решил пойти спать и оставил заглушку.

botrops-schlegelii ★★
() автор топика
Ответ на: комментарий от botrops-schlegelii
u@srv0:~> echo

u@srv0:~> echo -n
u@srv0:~>

echo без кавычек возвращает в stdout перенос строки.

IPR ★★★★★
()
Ответ на: комментарий от Cancellor

Я сначала использовал Патриковские скрипты, но часть из них ставила прямо в (Ч)рут, поэтому иногда добавлял checkinstall, _SBo скрипты стал смотреть/использовать для сложных случаев и когда хотел обойтись без checkinstall(но полностью не получается). А сторонние пакеты не использую - ибо либо собраны не с теми опциями, которые нужны, или их просто нет для 12.1

У меня BlueWhite64-12.1(pure x86_64)+Slackware-12.1(x86) на полноразмерном ноуте, и Slackware-12.1(x86) на eee-pc 900(кнопки работать так и не заставил - почти работало, но надоело - ибо не использую их).

botrops-schlegelii ★★
() автор топика

Error: «$TAG» is empty

Usage: ./tag TAG_NAME

logout

alexmaru
()

поправочки

#!/bin/bash
#
#TAG=ttt
#
TAG=$1
if [  -z "$1" ] ;then
    echo "Error: \"\$TAG\" is empty"
    echo "Usage: ./tag TAG_NAME"
    exit 64
fi
ALL=$(find /var/log/packages| wc -l)
if [ "$ALL" = 0 ] ;then
    echo "Error: \"\$ALL\" is empty"
    echo "Resume: не Слака"
    exit 65
fi
MY=$(find /var/log/packages -type f -name *$TAG | wc -l)
#MY=$(find /var/log/packages | gawk 'BEGIN {FS="-"} {print $4}'| grep $TAG | wc -l)
if [  "$MY" = 0 ] ;then
    echo "Error: \"\$MY\" is empty"
    echo "Resume: не Слакварщик"
    exit 65
fi
FULL=79
NUM=$(($FULL*$MY/$ALL))
#for ((a=0;a<=$FULL;a++));do
for a in $(seq 0 $FULL);do
    printf \|
done
echo
printf 8
#for ((b=1;b<=$NUM-1;b++));do
for b in $(seq 1 $(($NUM-1)));do
    printf \=
done
printf \>
echo -e \\n$((100*$MY/$ALL))%

botrops-schlegelii ★★
() автор топика
Ответ на: поправочки от botrops-schlegelii

основное изменение
1)


MY=$(find /var/log/packages -type f -name *$TAG | wc -l)

например:
если тег «tar», то пакет tar-1.23-x86_64-1 мог быть засчитан как пакет с нужным тегом

2)
стал нужен seq, если кто подскажет как обходиться без него - буду благодарен!

#for ((b=1;b<=$NUM-1;b++));do
for b in $(seq 1 $(($NUM-1)));do

botrops-schlegelii ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.