The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Shell скрипты)
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

помогите написать небольшую программу под shell, garilla (ok), 23-Май-09, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


1. "помогите написать небольшую программу под shell"  –1 +/
Сообщение от angra (ok), 23-Май-09, 22:25 
Во-первых, студентам тут не подают
Во-вторых, если вам задают сделать аналог tail на bash, то обычно это означает на _чистом_ bash, без всяких внешних команд типа sed. Задача в общем-то элементарная и решается на чистом bash за пять минут после чтения описания команды read
В-третьих, почитайте man bash или abs(https://www.opennet.ru/docs/RUS/bash_scripting_guide/) на предмет использования кавычек.
Ответить | Правка | Наверх | Cообщить модератору

2. "помогите написать небольшую программу под shell"  +/
Сообщение от garilla (ok), 24-Май-09, 14:11 
>Во-первых, студентам тут не подают

Я не прошу у вас никаких подачек.
А за ссылку на вменяемое руководство большое спасибо.


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

3. "помогите написать небольшую программу под shell"  +1 +/
Сообщение от garilla (ok), 24-Май-09, 17:33 
Посмотрите кто-нибудь и оцените работоспособность, пожалуйста:

n='wc -l text.txt'      #подсчет кол-ва строк в файле text.txt
temp=0                  
lines=0
if [-n "$1"]            #проверка наличия параметра
then lines=$1
else lines=10
fi
let "$n-=$lines"        #в n записывается номер строки с которой нужно выводить текст
while read line
do
let "$temp+=1"         #номер текущей строки
if [$n -le $temp]      #если номер тукщей строки больше n
  then echo "$line"     #то эта строка выводиться на экран
done

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

4. "помогите написать небольшую программу под shell"  +/
Сообщение от angra (ok), 24-Май-09, 21:10 
>Посмотрите кто-нибудь и оцените работоспособность, пожалуйста:

работоспособность вообще-то оценивается пробным запуском и вы это можете сделать сами.
>n='wc -l text.txt'      #подсчет кол-ва строк в

А почему сразу не sed или вообще tail? Какой смысл всего остального, после использования внешней команды? Если есть желание сделать в один проход и на чистом шелле, то стоит прочитать про массивы и циклы for

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

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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