Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- == Prípravné zadania ==
- Vypracúvajú sa doma. Tohto roku (2013) bola 3. zápočtovka taká, že sme mali spraviť jedno takéto zadanie.
- === Zadanie 01 ===
- # Datum: pripravne_csh (id: 1)
- # Zadanie: zadanie01
- #
- # Text zadania:
- #
- # V zadanych adresaroch uvedenych ako argumenty najdite adresare, v ktorych
- # je suma poctov riadkov vsetkych obycajnych suborov najvacsia. Prehladavajte
- # vsetky zadane adresare a aj ich podadresare. Sumy pocitajte len pre subory,
- # ktore su priamo v adresari.
- # Ak nebude uvedena ako argument ziadna cesta, prehladava sa aktualny pracovny
- # adresar (teda .).
- # Ak bude skript spusteny s prepinacom -w, najde adresare, v ktorych je suma
- # poctov slov obycajnych suborov najvacsia.
- # Ak bude skript spusteny s prepinacom -c, najde adresare, v ktorych je suma
- # poctov znakov obycajnych suborov najvacsia.
- #
- # Syntax:
- # zadanie1.csh [-h] [-c] [-w] [cesta ...]
- #
- # Vystup ma tvar:
- # Output: '<cesta k najdenemu adresaru> <celkovy pocet riadkov>'
- #
- # Priklad vystupu (zadanie1.csh /home/OS ucebnove):
- # Output: '/home/OS/bin 30'
- # Output: '/home/OS/pocitacove 30'
- # Output: '/ucebnove/1 30'
- #
- #
- # Program musi osetrovat pocet a spravnost argumentov. Program musi mat help,
- # ktory sa vypise pri zadani argumentu -h a ma tvar:
- # Meno programu (C) meno autora
- #
- # Usage: <meno_programu> <arg1> <arg2> ...
- # <arg1>: xxxxxx
- # <arg2>: yyyyy
- #
- # Parametre uvedene v <> treba nahradit skutocnymi hodnotami.
- # Ked ma skript prehladavat adresare, tak vzdy treba prehladat vsetky zadane
- # adresare a vsetky ich podadresare do hlbky.
- # Pri hladani maxim alebo minim treba vzdy najst maximum (minimum) vo vsetkych
- # zadanych adresaroch (suboroch) spolu. Ked viacero suborov (adresarov, ...)
- # splna maximum (minimum), treba vypisat vsetky.
- #
- # Korektny vystup programu musi ist na standardny vystup (stdout).
- # Chybovy vystup programu by mal ist na chybovy vystup (stderr).
- # Chybovy vystup musi mat tvar (vratane apostrofov):
- # Error: 'adresar, subor, ... pri ktorom nastala chyba': popis chyby ...
- # Ak program pouziva nejake pomocne vypisy, musia mat tvar:
- # Debug: vypis …
- === Zadanie 02 ===
- #! /usr/local/bin/bash
- #
- # Meno:
- # Kruzok:
- # Datum:
- # Zadanie: zadanie02
- #
- # Text zadania:
- # V zadanych adresaroch (cestach) uvedenych ako argumenty najdite vsetky
- # prazdne adresare. Ak nebude uvedena ako argument ziadna cesta, prehladava sa
- # aktualny pracovny adresar. Ak bude skript spusteny s prepinacom -n <pocet>,
- # najde adresare obsahujuce prave <pocet> obycajnych suborov.
- # Format vypisu bude nasledovny:
- # Output: 'plna cesta k najdenemu adresaru'
- # Syntax:
- # zadanie1.sh [-h] [-n <pocet>] [cesta ...]
- #
- # Program musi osetrovat pocet a spravnost argumentov. Program musi mat help,
- # ktory sa vypise pri zadani argumentu -h a ma tvar:
- # Meno programu (C) meno autora
- #
- # Usage: <meno_programu> <arg1> <arg2> ...
- # <arg1>: xxxxxx
- # <arg2>: yyyyy
- #
- # Korektny vystup programu musi ist na standardny vystup (stdout).
- # Chybovy vystup programu by mal ist na chybovy vystup (stderr).
- # Chybovy vystup musi mat tvar (vratane apostrofov):
- # Error: 'adresar, subor, ... pri ktorom nastala chyba': popis chyby ...
- # Ak program pouziva nejake pomocne vypisy, musia mat tvar:
- # Debug: vypis ...
- #
- # Poznamky: (sem vlozte pripadne poznamky k vypracovanemu zadaniu)
- #
- # Riesenie:
- === Zadanie 03 ===
- #! /usr/local/bin/bash
- #
- # Meno:
- # Kruzok:
- # Datum:
- # Zadanie: zadanie03
- #
- # Text zadania:
- # Pre zadane adresare (cesty) uvedene ako argumenty vytvorte v cielovom adresari
- # ich kopie aj s ich podstromami s tym, ze sa skopiruju len tie subory,
- # ktorych meno zacina pismenom pricom mena tychto suborov budu modifikovane
- # nasledovne:
- # ak meno suboru zacina velkym pismenom, vsetky pismena v nom sa skonvertuju na
- # velke;
- # ak meno zacina malym pismenom, vsetky pismena v mene sa skonvertuju na male.
- # Syntax:
- # zadanie1.sh [-h] cesta [...] ciel
- #
- # Program musi osetrovat pocet a spravnost argumentov. Program musi mat help,
- # ktory sa vypise pri zadani argumentu -h a ma tvar:
- # Meno programu (C) meno autora
- #
- # Usage: <meno_programu> <arg1> <arg2> ...
- # <arg1>: xxxxxx
- # <arg2>: yyyyyj
- #
- # Korektny vystup programu musi ist na standardny vystup (stdout).
- # Chybovy vystup programu by mal ist na chybovy vystup (stderr).
- # Chybovy vystup musi mat tvar (vratane apostrofov):
- # Error: 'adresar, subor, ... pri ktorom nastala chyba': popis chyby ...
- # Ak program pouziva nejake pomocne vypisy, musia mat tvar:
- # Debug: vypis ...
- #
- # Poznamky: (sem vlozte pripadne poznamky k vypracovanemu zadaniu)
- #
- # Riesenie:
- === Zadanie 14 ===
- # Datum: pripravne_csh (id: 2)
- # Zadanie: zadanie14
- #
- # Text zadania:
- #
- # V zadanych textovych suboroch uvedenych ako argumenty najdite najdlhsi riadok
- # (riadky) zo vsetkych a vypiste ho (ich). Dlzka riadku je jeho dlzka v znakoch.
- # Ak nebude uvedeny ako argument ziadny subor, prehladava sa standardny vstup
- # (a jeho meno je -).
- #
- # Syntax:
- # zadanie1.csh [-h] [cesta ...]
- #
- # zadanie1.csh [-h] [cesta ...]
- #
- # Vystup ma tvar:
- # Output: '<subor>: <cislo riadku v subore> <dlzka riadku> <riadok>'
- #
- # Priklad vystupu (parametrami boli subory 123/deviaty druhy/meno/nejaky
- # v adresari /home/OS/test/test1):
- # Output: '123/deviaty: 1 178 6subor jednoducho... 123 subo2r ...'
- # Output: '123/deviaty: 36 178 6subor jednoducho... 123 subo2r ...'
- # Output: 'druhy/meno/nejaky: 14 178 nejaky stvrty jednoducho... semtam stvrty ...'
- === Zadanie 16 ===
- # Datum: pripravne_csh (id: 3)
- # Zadanie: zadanie16
- #
- # Text zadania:
- #
- # Vypiste vsetkych pouzivatelov, ktori neboli za poslednu dobu (odkedy system
- # zaznamenava tieto informacie) prihlaseni.
- # Ak bude skript spusteny s prepinacom -g <group>, vypise len pouzivatelov,
- # ktori neboli za poslednu dprihlaseni a patria do skupiny <group>, ktora
- # je zadana ako cislo.
- # Pomocka: pouzite prikaz finger alebo last a informacie z /etc/passwd.2001.
- #
- # Syntax:
- # zadanie1.csh [-h] [-g <group>]
- #
- # Format vypisu bude nasledovny:
- # Output: '<login_name> <group> <full_name>'
- #
- # Priklad vystupu:
- # Output: 'cernicka 520 Cernicka Martin'
- # Output: 'chudik 520 Chudik Alexander'
- #
- === Zadanie 17 ===
- # Datum: pripravne_csh (id: 4)
- # Zadanie: zadanie17
- #
- # Text zadania:
- #
- # V zadanych adresaroch uvedenych ako argumenty najdite symbolicke linky,
- # ktorych cielova cesta ma zo vsetkych najviac komponentov - to znamena, ze sa
- # na ceste k cielovemu suboru nachadza najviac adresarov. Prehladavajte vsetky
- # zadane adresare a aj ich podadresare.
- # Ak nebude uvedena ako argument ziadna cesta, prehladava sa aktualny pracovny
- # adresar (teda .).
- # Ak bude skript spusteny s prepinacom -d <hlbka>, prehlada adresare len do
- # hlbky <hlbka> (vratane). Hlbka znamena pocet adresarov na ceste medzi
- # startovacim adresarom a spracovavanym suborom. Hlbka 1 znamena, ze bude
- # prezerat subory len v priamo zadanych adresaroch.
- #
- # Syntax:
- # zadanie1.csh [-h] [-d <hlbka>] [cesta ...]
- #
- # Vystup ma tvar:
- # Output: '<cesta k najdenej linke> -> <cielova cesta>'
- #
- # Priklad vystupu:
- # Output: 'test5/lev1_2/lev2_2/symlink_4 -> ../../lev1_1/lev2_1/testfile_17'
- #
- === Zadanie 21 ===
- # Datum: pripravne_csh (id: 5)
- # Zadanie: zadanie21
- #
- # Text zadania:
- #
- # Zistite, ktori pouzivatelia sa hlasia na osu z viac ako 10-tich roznych
- # strojov za poslednu dobu (odkedy system zaznamenava tieto informacie).
- # Ak bude skript spusteny s parametrom -n <pocet>, zistite, ktory pouzivatelia
- # sa hlasia z viac ako <pocet> strojov.
- # Ignorujte prihlasenia, pre ktore nepoznate adresu stroja.
- # Pomocka: pouzite prikaz last
- #
- # Syntax:
- # zadanie1.csh [-h] [-n <pocet>]
- #
- # Format vypisu bude nasledovny:
- # Output: '<meno pouzivatela> <pocet roznych strojov, z ktorych sa hlasil>'
- #
- # Priklad vystupu:
- # Output: 'staron 25'
- # Output: 'gorner 24'
- # Output: 'bisco 23'
- #
- #
- # Program musi osetrovat pocet a spravnost argumentov. Program musi mat help,
- # ktory sa vypise pri zadani argumentu -h a ma tvar:
- # Meno programu (C) meno autora
- #
- # Usage: <meno_programu> <arg1> <arg2> ...
- # <arg1>: xxxxxx
- # <arg2>: yyyyy
- #
- # Parametre uvedene v <> treba nahradit skutocnymi hodnotami.
- # Ked ma skript prehladavat adresare, tak vzdy treba prehladat vsetky zadane
- # adresare a vsetky ich podadresare do hlbky.
- # Pri hladani maxim alebo minim treba vzdy najst maximum (minimum) vo vsetkych
- # zadanych adresaroch (suboroch) spolu. Ked viacero suborov (adresarov, ...)
- # splna maximum (minimum), treba vypisat vsetky.
- #
- # Korektny vystup programu musi ist na standardny vystup (stdout).
- # Chybovy vystup programu by mal ist na chybovy vystup (stderr).
- # Chybovy vystup musi mat tvar (vratane apostrofov):
- # Error: 'adresar, subor, ... pri ktorom nastala chyba': popis chyby ...
- # Ak program pouziva nejake pomocne vypisy, musia mat tvar:
- # Debug: vypis ...
- #
- # Poznamky: (sem vlozte pripadne poznamky k vypracovanemu zadaniu)
- #
- # Riesenie:
- === Zadanie 23 ===
- # Datum: pripravne_csh (id: 6)
- # Zadanie: zadanie23
- #
- # Text zadania:
- #
- # Zistite, ktori pouzivatelia sa hlasia na osu v noci (teda cas prihlasenia je
- # od 22:00 do 05:00). Do uvahy berte len ukoncene spojenia za poslednu dobu
- # (odkedy system zaznamenava tieto informacie).
- # Ak bude skript spusteny s parametrom -n <pocet>, zistite, ktori pouzivatelia
- # sa na osu prihlasili v noci viac ako <pocet> krat.
- # Dodrzte format vystupu uvedeny v priklade.
- # Pomocka: pouzite prikaz last
- # Syntax:
- # zadanie1.csh [-h] [-n <pocet>]
- #
- # Format vypisu bude nasledovny:
- # Output: '<user> <pocet prihlaseni> <mesiac v cislach-den> <cas>’
- #
- # Priklad vystupu:
- # Output: ' 5sedlacek 03-23 23:12'
- # Output: 'tubel 2 03-23 22:55'
- # Output: 'kubikm 4 03-23 02:31'
- === Zadanie 24 ===
- # Datum: pripravne_csh (id: 7)
- # Zadanie: zadanie24
- #
- # Text zadania:
- #
- # V zadanych adresaroch uvedenych ako argumenty najdite textove subory,
- # v ktorych obsahu sa vyskytuje ich meno. Prehladavajte vsetky zadane adresare
- # a aj ich podadresare.
- # Ak nebude uvedena ako argument ziadna cesta, prehladava sa aktualny pracovny
- # adresar (teda .).
- # Ak bude skript spusteny s prepinacom -d <hlbka>, prehlada adresare len do
- # hlbky <hlbka> (vratane). Hlbka znamena pocet adresarov na ceste medzi
- # startovacim adresarom a spracovavanym suborom. Hlbka 1 znamena, ze bude
- # prezerat subory len v priamo zadanych adresaroch.
- #
- # Syntax:
- # zadanie1.csh [-h] [-d <hlbka>] [cesta ...]
- #
- # Vystup ma tvar:
- # Output: '<cesta k najdenemu suboru> <pocet riadkov s menom suboru>'
- #
- # Priklad vystupu:
- # Output: '/home/OS/test/test1/123/deviaty 19'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement