The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"помогите написать небольшую программу под shell"
Версия для распечатки Пред. тема | След. тема
Форум Программирование под UNIX
Исходное сообщение [ Отслеживать ]

. "помогите написать небольшую программу под shell" +/
Сообщение от tux2002email (?), 29-Май-09, 13:23 
#!/bin/sh

#################аргументы##########################
n=5 # Количество строк
myfile="/var/log/messages" #При режиме file
#tailmode="stdin"
tailmode="file"
####################################################

counter=0
if [ $tailmode = "file" ]
then
    exec 0>&- # Закрываем stdin
    exec 0<$myfile # Открываем stdin из файла
fi

while read line <&0
do
    for (( i=1; i < n; i++))
    do
        lines[$i]=${lines[$i+1]}
    done
    lines[n]=$line
    let "counter++"
done

nr=$n

if [ $counter -lt $n ]
then
    nr=$counter # Если строк меньше n
fi


for (( i=n-nr+1; i <= n ; i++))
do
    echo ${lines[$i]}
done

# В этом режиме в бесконечный цикл ожидания следующей строки
if [ $tailmode = "file" ]
then
    while [ true ]
    do
        while read line <&0
        do
            echo $line
        done
    done
fi


В качестве черновика (мож с ошибками Сами тестируйте)


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
помогите написать небольшую программу под shell, garilla, 23-Май-09, 16:52  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру