LINUX.ORG.RU

Помогите с Shell програмкой

 , ,


0

1

Привет всем,

Народ умоляю помогите с программкой. Я ничего не успеваю, и в сриптинге даже тяжело сказать что новичок. Очень нужна ваша помощь и как можно скорей =( Вроде бы ничего особого сложного нет, просто я тормоз и не успеваю.

Write a menu program for selecting a stored TV show The menu must use a case statement 1) The menu will have the following selections a. Search for TV show title b. Search for the episode number and/or name c. Add a new episode list (must have title of TV show, episode, submission date) d. Allow users to give each episode a rating (give them a way to select the episode and add a rating, there can be multiple ratings for each episode e. Print out the list of TV shows and episodes to the screen – sort first by TV episode, then under each TV show sort by episode (number or name) Some Error checking is required for full credit. Ex: true dates, time, numeric ratings…. etc. – of course, this depends on how you set it up.

Заранее, не можете даже представить насколько благодарен.



Последнее исправление: cetjs2 (всего исправлений: 1)

Ответ на: комментарий от olibjerd

Или хотя бы укажешь в нужное направление или на худой конец другой форум какой нибудь.

saintfelix
() автор топика
Ответ на: комментарий от anonymous

Честно говоря мне не совсем ясны причины ваших оскорблений. У меня есть вполне приличная работа, из-за которой я как раз таки и не успел это сделать.

saintfelix
() автор топика

Т.е. суть в том, чтобы написать скрипт который имитирует функциональность онлайн-ТВ?

NaiLi ★★
()

нихерна не понял. на чем писать ? в чем искать? какие эпизоды? Че это вообще такое?

dikiy ★★☆☆☆
()

А откуда растут ноги этой задачи?

Deleted
()
Ответ на: комментарий от NaiLi

По большому счёту да. Что то вроде менеджера медиа библиотеки

saintfelix
() автор топика
Ответ на: комментарий от Deleted

Посчитал что образование всё рано надо уж закончить, тем более осталось - всего ничего. Обычно нормально получается совмещать. А этот семестр... не получилось =\

saintfelix
() автор топика
Ответ на: комментарий от saintfelix

Если ищите помощи, для начала переведите на русский язык, расскажите предысторию, детали работы, по какому предмету, может кто-нибудь и „примет вызов“.

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

Писать на bash/shell под Linux т.е можно использовать всякие разные awk, sed.

Напишите программу с меню для выбора сохранённых ТВ шоу.

Меню должно быть реализовано с помощью case

Меню: 1)Поиск ТВ Шоу по названию 2)Поиск эпизода по названию \ номеру серии 3)Добавить эпизод в список (должен иметь название шоу,Эпизод,и дату эфира) 4)Дать эпизоду рейтинг (может быть несколько голосов) 5)Вывести на экран список шоу и эпизодов. сортировав по названию шоу,а затем и по номеру эпизода\названию

Обязателен парсинг вводимых данных.

saintfelix
() автор топика
Ответ на: комментарий от NaiLi

Это домашнее задание под предмету «Юникс» который по большому счёту свёлся к скриптингу на bash, shell. Насколько я понимаю она хочет чтоб был текстовый файл играющий роль базы данных. вот неработающий пример который она привела чуть позже

Phonebook menu:

# create a file named phonedir for the phonebook entries #!/bin/ksh

PHONEBOOK=./phonebook export PHONEBOOK

if [ ! -f «$PHONEBOOK» ] then echo «$PHONEBOOK does not exist or is not an ordinary file!» echo «Should I create it for you (y/n)? \c» read answer

if [ «$answer» != y ] then exit 1 fi fi

if [ «$#» -ne 0 ] rhen lu «$@» exit fi

trap «continue» 2

while true do echo ' Would you like to:

1. Look someone up 2. Add someone to the phone book 3. Remove someone from the phone book 4. Change an entry in the phone book 5. List all names and numbers in the phone book 6. Exit this program

Please select one of the above (1-6): \c'

read choice echo case «$choice» in 1) echo «Enter name to look up: \c» read name if [ -z «$name» ] then echo «Lookup ignored» else lu «„$name“ fi;; 2) add;; 3) echo „Enter name to remove: \c“ read name if [ -z »$name" ] then echo «Removal ignored» else rem «$name» fi;; 4) echo «Enter name to change: \c» read name if [ -z «$namd» ] then echo «Change ignored» else change «$name» fi;; 5) listall;; 6) exit 0;; *) echo «Bad choice»;; esac done

add script

echo «Type in your new entry» echo «When you're done, type just a single RETURN on the line.»

first= entry= while true do echo «>> \c» read line

if [ -n «$line» ] then entry=«$entry$line^» if [ -z «$first ] then first=$line fi else break fi done

echo »$entry >> $PHONEBOOK sort -o $PHONEBOOK $PHONEBOOK echo echo «$first has been added to the phone book

lu script

name=$1 grep »$name" $PHONEBOOK > /tmp/matches$$

if [ ! -s /tmp/matches$$ ] then echo «I can't find $name in the phone book» else while read line do display «$line» done < /tmp/matches$$ fi

rm /tmp/matches$$

display script

echo echo "--------------------------------"

entry=$1 IFS=«^» set $entry

for line in «$1» «$2» «$3» «$4» «$5» $6" do echo " |\r| $line" done echo «| |» echo "---------------------------------" echo

rem script

name=$1 grep «$name» $PHONEBOOK > /tmp/matches$$

if [ ! -s /tmp/matches$$ ] then echo «I can't find $name in the phone book» exit 1 fi

exec < /tmp/matches$$

while read line do display «$line» echo «Remove this entry (y/n)? \c» read answer < /dev/tty # use 'line' if not supported

if [ «$answer» = y ] then break fi done

rm /tmp/matches$$ if [ «$answer» = y ] then if grep -v «^$line$» $PHONEBOOK > /tmp/phonebook$$ then mv /tmp/phonebook$$ $PHONEBOOK echo «Selected entry has been removed» else echo «Entry not removed» fi fi

change script

name=$1

grep «$name» $PHONEBOOK > /tmp/matches$$

if [ ! -s /tmp/matches$$ ] then echo «I can't find $name in the phone book» exit 1 fi

exec < /tmp/matches$$

while read line do display «$line» echo «Change this entry (y/n)? \c» read answer < /dev/tty if [ «$answer» = y ] then break fi done

rm /tmp/matches$$ if [ «$answer» != y ] then exit fi

. . .

listall script

IFS='^'

echo "-------------------------------------------" while read line set $line eval echo «\» \$$#\r$1\«» done < $PHONEBOOK echo "--------------------------------------------------------"

saintfelix
() автор топика
Ответ на: комментарий от tux-eda

Мы все глубоко признательны за ваше мнение. Спасибо вам большое.

И спасибо добрым людям которые мне всё таки помогли!

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