Cvika z UNIXU

Uživatelský avatar
Necroman
Supermatfyz(ák|ačka)
Příspěvky: 459
Registrován: 20. 1. 2005 19:46
Typ studia: Informatika Mgr.
Bydliště: Louny / kolej Jednota, Praha
Kontaktovat uživatele:

Cvika z UNIXU

Příspěvek od Necroman »

ahoj, helpnul by mi nekdo s timto? Pokud budete mit cas, muzete neco pripsat, nakonec by se to hodilo do jednoho fajlu a dalo by se z toho dobre ucit... diky
pokud uz neco podobného (vypracovaného) mate, nevahejte a prispejte :-)

Příklady na procvičení shellu
=============================
-------------------------------------------------------------------------------
A) základní příkazy pro manipulaci se soubory
-------------------------------------------------------------------------------
1. Kolik v systému existuje uživatelských účtů?
2. Vypište řádky č. 10 až 20 souboru /etc/passwd.
3. Kolik souborů (všech, včetně jmen začínajících tečkou) je aktuálním
adresáři?
4. Uložte manuálovou stránku k shellu bash do souboru bash.man a pak
spočítejte, kolik je v souboru slov.
5. Vytvořte soubor xxx, který má čas poslední modifikace stejný jako soubor
/etc/services.
6. Napište příkaz, který bude vstup z klávesnice ukládat do souborů s1 a s2.
7. Uložte do souboru xxx první a poslední řádek souboru /etc/group.
8. Napište příkaz, který bude vypisovat obsah adresáře /bin po stránkách na
obrazovku (pomocí more nebo less) a zároveň ukládat do souboru ls-bin.
9. Vytvořte adresář dir a v něm soubor takový, že nepůjde zjistit jméno tohoto
souboru pomocí ls, ale kdokoliv, kdo zná jméno souboru, do něho může
zapisovat, ale ne číst. Výjimkou je vlastník souboru, který ho může číst, ale
ne zapisovat. Ověřte funkčnost ve spolupráci s jiným uživatelem. Jakými
různými způsoby lze nastavit požadovaná práva?
-------------------------------------------------------------------------------
B) komunikace mezi uživateli, identifikace uživatelů
-------------------------------------------------------------------------------
1. Pošlete svému kolegovi na obrazovku výpis obsahu (s podrobnými informacemi
o souborech) adresáře o jednu úroveň výše, než je aktuální adresář.
2. Pošlete svému kolegovi na obrazovku obsah souboru /etc/profile.
3. Pošlete svému kolegovi e-mailem (subject bude "Soubor") obsah souboru
/etc/inetd.conf.
4. Jak způsobíte, aby se vám veškerá došlá pošta ukládala nejen do
standardního mailboxu, ale i do souboru ~/inbox? Připravte soubor ~/.inbox
tak, aby byl přístupný pouze vám.
5. Zjistěte, do kolika skupin uživatelů patříte.
6. Nastavte forward pošty tak, aby se do souboru ~/prehled_posty pro kazdy
dosly mail zapisovalo datum jeho prichodu.
-------------------------------------------------------------------------------
C) diff, comm, cut, paste, split, sort, tr
-------------------------------------------------------------------------------
1. Vypište čísla skupin, která jsou použita v /etc/passwd. Každé číslo by mělo
být vypsáno právě jednou.
2. Vypište obsah /etc/passwd setříděný (numericky) podle UID.
3. Vypište obsah /etc/group setříděný podle jména skupiny.
4. Vypište plná jména uživatelů setříděná sestupně podle login name.
5. Vypište loginy uživatelů ve dvou sloupcích, v levém v původním tvaru,
v pravém se všemi malými písmeny převedenými na velká. Sloupce jsou odděleny
znakem '='.
6. Vypište loginy uživatelů oddělené mezerami po pěti na řádku, setříděné
zleva doprava.
7. Vypište jména skupin do 10-ti řádků, na každém řádku jsou skupiny oddělené
čárkami.
8. Změňte v souboru /etc/passwd každý výskyt znaků 'w' a 'W' na '@' a pomocí
diff zjistěte, které řádky byly změněny.
9. Vypište čísla skupin, která existují v /etc/group, ale nejsou použita v
/etc/passwd.
-------------------------------------------------------------------------------
D) find
-------------------------------------------------------------------------------
1. Napište, příkaz, který vypíše počet všech pro vás viditelných adresářů
počínaje /usr ('/usr').
2. Napište, příkaz, který smaže všechny soubory 'core' staré aspoň 5 dní.
3. Napište, příkaz, který vypíše seznam všech rootem vlastněných programů,
které jsou spustitelné pro uživatele, skupinu i ostatní uživatele.
4. Napište, příkaz, který smaže všechny objektové soubory (*.o) nezměněné
aspoň 2 dny v podstromu vašeho domovského adresáře.
5. Napište, příkaz, který vypíše počet všech záložních kopií souborů
editovaných editorem vim (*~) vlastněných uživateli 'root' a 'nobody'.
6. Napište, příkaz, který u všech obyčejných souborů v podstromu vašeho
domovského adresáře, které mají nastavené právo spuštění, vypíše informace o
jejich typu (zda jde o binární spustitelné programy, shellové skripty, apod.)
7. Napište, příkaz, který pro každý soubor 'core' v podstromu vašeho
domovského adresáře vypíše jeho velikost v bytech.
8. Napište, příkaz, který vypíše počet všech speciálních souborů zařízení
(znakových i blokových) v celém stromu souborů.
9. Napište, příkaz, který vypíše jména všech zdrojových souborů v C (končí
příponou .h nebo .c) vlastněných vámi nebo uživatelem root v celém stromu
adresářů.
Přílohy
priklady_shell.zip
Vse a mnohem vice z UNIXu :-)
(8.59 KiB) Staženo 203 x
WANTED:
Dead or Alive
^-^
( ^ )
Schroedinger's Cat
Odpovědět

Zpět na „2004“