Здравейте! Нова съм и първо искам да се извиня, ако не поствам темата в правилния раздел, затова ще помоля модераторите да я насочат, ако има някакъв проблем. Имам нужда от помощ. Имам да пиша нещо като домашна работа/задание/ по Линукс, което по думите на преподавателя ми е супер елементарно, обаче аз съм гола вода в тая сфера и изобщо не знам какво трябва да се направи. Затова искам помощта на някой добросъвестен със свободно време, който разбира от линукс да ми надраска пет реда код, който мога да предам. Съответно темите по които трябва да се пише са следните:
1). Да се напише скрипт, който сканира дадена директория за следните файлове: header.txt, footer.txt и content.txt. Съдържанието на тези файлове трябва да бъде прочетено (игнорирайки всички редове започващи с #) и използвано за генериране на HTML страница със съответните header, footer и content. В тези файлове може да има произволен текст и/или HTML код, но не трябва да има head и body тагове. При сканиране на дадената директория скриптът трябва да сравни датата на последна промяна на header.txt, footer.txt и content.txt с датата на последна промяна на HTML страницата (ако има такава страница). Ако HTML страницата е с по-нова дата тогава не се генерира нова HTML страница.
2). Да се напише скрипт, който може да стартира произволно Java приложение. Необходимо е да се поддържат следните опции на командния ред:
-d <y/n> - пуска виртуалната машина в debug режим и ако аргумента е
"y" виртуалната машина е suspend-ната (тоест чака връзка с debugger,
за да започне изпълнението на код)
-b - приложението е в background режим, всички потоци са пренасочени
към /dev/null и скрипта връща контрола над терминала
Скриптът трябва да се опита автоматично да намери JAVA_HOME, ако не е дефинирана. Това става като се потърси java командата в PATH и от пътя към командата се извлече JAVA_HOME
3). Да се напише скрипт, който представлява игра на морски шах. Единственото изискване е скриптът да е интерактивен. Това значи, че докато играта тече скриптит трябва да пита за входни данни от ограчите. Входните данни може да са координатите на следващия ход на играча. Потребителският интерфейс е свободен. Може да се използва read командата, за да се постигне неободимото ниво на интерактивност.
4). Да се напише скрипт, който може да чете големи текстови файлове като съдържанието е под формата на интерактивни страници. Когато скриптът е изпълнен като му е подаден текстов файл като аргумент на стандартния изход трябва да се принтира първа страница (приема се, че една страница е 30 реда). Скриптът трябва да чака за входни данни, които представляват номер на страница. Скриптът приключва, когато от потребителя е посикана последна страница. Може да се ипозлзват командите head/tail, wc и read.
5). Да се напише скрипт, който приема като аргумент файл, чието съдържание представлява списък от пълни пътища до файлове, които трябва да бъдат архивирани в tar архив и компресирани. Резултатът от компресията трябва да бъде копиран през SSH на отдалечена машина. Необходимо е да се поддържат следните опции на командния ред:
-f - файл, от който да се четат пътищата към файловете, който ще се
архивират
-е - ако някой от пътищата не съществува изпълнението на скрипта се
преустановява и се извежда съобщение за грешка; в противен случай
несъществуващ път се игнорира
-g - gzip компресия; в противен случай bzip2
-h - отдалечен хост и потребител във вид: user@host
За копиране през SSH може да се използва scp командата, която
интерактивно очаква въвеждане на парола (приемайки, че автентикацията
е само чрез потребителско име и парола).
6). Да се напише скрипт, който може да изпълнява произволна команда върху всички файлове и/или директории под дадена директория (рекурсивно). Необходимо е да се поддържат следните опции на
командния ред:
-f - командата се изпълнява върху файлове
-d - командата се изпълнява върху директории
-c - команда, която да се изпълни
Пример:
./script.sh -d -f -c touch /home/pesho/public_html
Приема се, че файловете или директориите са безкрайно много, за това
тряба да се използват командите find и xargs
7). Да се напише скрипт, който представлява интерактивен browser за файловата система. При стартиране на скрипта, се принтира съдържанието на текущата директория с всички атрибути на файловете и директориите.
Скриптът чака да му се въведе пълен или релативен път към директория на която да принтира съдържанието или exit за преустановяване на изпълнението.
Извинявам се за дългият пост. Ако се намери някой ще съм му много благодарна! Ако даже е по-удобно може да се свърже с мен на е-mail:
kmilewa@gmail.com