LINUX.ORG.RU

bash


0

0

Всем привет!Как замутить такую штуку? в advancedBashProg не нашел

while true
do
    read line # читать именно строку
    echo $line # что то делать со строкой не обязательно echo
done <`tail -f file.log` 

# знаю что можно сделать так : done<file.log ,
# но это же не будет tail :\
Подскажите пожалуйста! 
Куда копать как можно сделать другими средствами?
★★★

while true красиво выглядит, но лучше писать while [ 1 ]
так как true внешняя прога и форкается на каждой иттерации цикла, в отличие от builtin [

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

У-у-у как все запущено-то!

Осталось научить баш раскрывать алиасы после команды (while)

З.Ы. А кто с кем спорит?

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

sergey@teak:~$ alias true="echo OK"
sergey@teak:~$ while true; do sleep 1; done;
OK
OK
OK
OK

sergey@teak:~$

Сдаётся мне, что алиас раскрылся. :)

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

Гм.

[~]> which true
/bin/true
[~]> help true
true: true
    Return a successful result.
[~]> su
Пароль: 
[jini]> mv /bin/true ~/backup/
[jini]> exit
[~]> which true
which: no true in (/bin:/usr/bin)
[~]> i=''
[~]> while true; do i=${i}1; echo $i; [[ $i = '1111' ]] && break; done
1
11
111
1111
[~]> bash --version
GNU bash, version 3.00.16(1)-release (i686-pc-linux-gnu)
Copyright (C) 2004 Free Software Foundation, Inc.
[~]> 

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

Да раскрылся.
По алиасам вопрос закрыт.

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