услвие проверки в скрипте

Модератор: Модераторы разделов

Аватара пользователя
RazorJack
Сообщения: 113
ОС: Gentoo 2008

услвие проверки в скрипте

Сообщение RazorJack »

вот код ::

Код: Выделить всё

#!/bin/sh
flist=`find ./ -name "link"`
while test -n $flist;do
echo $flist|xargs -L 1 /bin/sh ./proclink.sh
flist=`find ./ -name "link"`
done

скрипт proclink.sh работеат как надо так что после строки
echo $flist|xargs -L 1 /bin/sh ./proclink.sh
все файлы с именем link удалятся или переименуются. Это уже проверено
проблема в том что цикл while ни как не может выйти из бесконечного цикла
тоесть при отсутствии файлов с именем link утилита find возвращает пустую строку. Но проверка
test -n $flist
это не выдает
Вопрос:
как мне задать условие цикла чтобы он вышел когда переменная $flist окажется пустой строкой ?
Спасибо
Спасибо сказали:
Аватара пользователя
korisk
Сообщения: 205
ОС: Xubuntu

Re: услвие проверки в скрипте

Сообщение korisk »

export e="d";if [[ -z $e ]];then echo DD;fi

Удач
Registerd Linux user #486684 at http://counter.li.org/
Спасибо сказали:
Аватара пользователя
RazorJack
Сообщения: 113
ОС: Gentoo 2008

Re: услвие проверки в скрипте

Сообщение RazorJack »

спасибо заработало в таком виде

Код: Выделить всё

#!/bin/sh
homeload=/home/Razor/MyDownloads
while true;do
flist=`find ./ -name "link"`
if [[ -z $flist ]];then
break
fi
echo $flist|xargs -L 1 /bin/sh ./proclink.sh
done

но есть проблема в строке
echo $flist|xargs -L 1 /bin/sh ./proclink.sh
нужно чтобы строки из $flist подавались оквоченными (в кавычках тоесть)
нет ли команды оквочивания или через sed только можно ?
Спасибо сказали: