Potrzebna pomoc w napisaniu 3-4 skryptów w BASH
: 10 marca 2007, 02:13
potrzebuje pilnie napisac kilka ponoć prostych skryptow na uczelnie. Za pomoc chetnie przeleję $$ na dużą slaszkę Głównie zależy mi na 1,2 i 3 skrypcie.
-------------------------------------------------
1. Skrypt dla zadanej jako parametr nazwy uzytkownika (np. student, root itd) odczytuje z pliku /etc/passwd login, pełną nazwę i katalogi domowe użytkownika, następnie komendą du odczytuje rozmiar wszystkich plikow w katalogu domowym uzytkownika. Wyswietla dane. UWAGA, do testow przekopiuj plik /etc/passwd do katalogu domowego lub /tmp.
2.1 Przerobić skrypt 1 aby była możliwość wywołania skryptu dla wielu (nazw) użytkwoników. Proszę wykorzystać pętlę -for.
2.2 Napisać skrypt który wyświetla sumaryczną długość (w bajtach) wszystkich plików danego użytkownika znajdującego się w kartotece podanej jako argument. Należy zwrócić uwagę, aby nie liczyć żadnych plików dwa razy, tzn. należy uwzględnić linki symboliczne. Uwzględnienie linków twardych nie jest obowiązkowe.
Wywołanie: ./skrypt nazwa_uzytkownika katalog
3. Napisac skrypt ktory wyswietla liste plikow w danej kartotece z atrybutem set-group-id z dopisana listą użytkwników uprawionych do wchodzenia do tej grupy przez newgrp
UWAGA:
nalezy wykorzystac komendy find i join
oraz zapoznac sie z plikiem /etc/group.
Bedzie potrzebne rowniez polecenie sort
Przyklad wywolania:
skrypt nazwa_kartoteki_1 nazwa_kartoteki_2 ... nazwa_kartoteki_N
prog jkowalsk,anowak
skrypt anowak,kabacki,arobin
prog2 root,admin
4. Napisać skrypt który zautomatyzuje działania:
Utworzyć konta dla pracowników działu "Produkcja" przestrzegając listy reguł:
- konta uzytkownikow sa tworzone zgodnie z konwencja: nazwisko bez polskich znakow +pierwsza litera imienia pracownika (w razie konfliktu, do nazwy uzytkownika dodac liczbe porzadkowa, np: kowalskij1, kowalskij2,...). Np. konto uzytkownika Jan Kowalski nosi nazwe kowalskij. Dla kazdego pracownika nalezy zdefiniowac (w formie komentarza, w momencie tworzenia) jego pelne dane: imie i nazwisko (juz z polskimi znakami).
- konta uzytkownikow nalezacych do dzialow sa tworzone w podkatalogach katalogu /home o takich nazwach jak nazwa dzialu np /home/kadry
- grupa domyslna dla osob z danego dzialu to grupa o takiej nazwie, jak nazwa dzialu.
- osoby z roznych dzialow nie maja mozliwosci wzajemnego przegladania swoich plikow
- bezposrednio po zalozeniu konta, hasla wszystkich uzytkownikow sa takie same, jak nazwa ich konta
- hasla musza byc zmienione przy pierwszym zalogowaniu
- uzytkownicy musza zmieniac swoje hasla przynajmniej raz na dwa miesiace (60 dni). Na piec dni przed uplywem terminu waznosci hasla, uzytkownicy powinni byc ostrzegani o koniecznosci jego zmiany.
jeden dzien po uplywie terminu waznosci hasla, konto, ktorego uzytkownik nie dokonal zmiany hasla, zostanie zablokowane.
Nalezy zalozyc konta dla pracownikow dzialu Finanse:
Jan Makuszynski
Anna Gruszka
Adrian Nowalik
-------------------------------------------------
-------------------------------------------------
1. Skrypt dla zadanej jako parametr nazwy uzytkownika (np. student, root itd) odczytuje z pliku /etc/passwd login, pełną nazwę i katalogi domowe użytkownika, następnie komendą du odczytuje rozmiar wszystkich plikow w katalogu domowym uzytkownika. Wyswietla dane. UWAGA, do testow przekopiuj plik /etc/passwd do katalogu domowego lub /tmp.
2.1 Przerobić skrypt 1 aby była możliwość wywołania skryptu dla wielu (nazw) użytkwoników. Proszę wykorzystać pętlę -for.
2.2 Napisać skrypt który wyświetla sumaryczną długość (w bajtach) wszystkich plików danego użytkownika znajdującego się w kartotece podanej jako argument. Należy zwrócić uwagę, aby nie liczyć żadnych plików dwa razy, tzn. należy uwzględnić linki symboliczne. Uwzględnienie linków twardych nie jest obowiązkowe.
Wywołanie: ./skrypt nazwa_uzytkownika katalog
3. Napisac skrypt ktory wyswietla liste plikow w danej kartotece z atrybutem set-group-id z dopisana listą użytkwników uprawionych do wchodzenia do tej grupy przez newgrp
UWAGA:
nalezy wykorzystac komendy find i join
oraz zapoznac sie z plikiem /etc/group.
Bedzie potrzebne rowniez polecenie sort
Przyklad wywolania:
skrypt nazwa_kartoteki_1 nazwa_kartoteki_2 ... nazwa_kartoteki_N
prog jkowalsk,anowak
skrypt anowak,kabacki,arobin
prog2 root,admin
4. Napisać skrypt który zautomatyzuje działania:
Utworzyć konta dla pracowników działu "Produkcja" przestrzegając listy reguł:
- konta uzytkownikow sa tworzone zgodnie z konwencja: nazwisko bez polskich znakow +pierwsza litera imienia pracownika (w razie konfliktu, do nazwy uzytkownika dodac liczbe porzadkowa, np: kowalskij1, kowalskij2,...). Np. konto uzytkownika Jan Kowalski nosi nazwe kowalskij. Dla kazdego pracownika nalezy zdefiniowac (w formie komentarza, w momencie tworzenia) jego pelne dane: imie i nazwisko (juz z polskimi znakami).
- konta uzytkownikow nalezacych do dzialow sa tworzone w podkatalogach katalogu /home o takich nazwach jak nazwa dzialu np /home/kadry
- grupa domyslna dla osob z danego dzialu to grupa o takiej nazwie, jak nazwa dzialu.
- osoby z roznych dzialow nie maja mozliwosci wzajemnego przegladania swoich plikow
- bezposrednio po zalozeniu konta, hasla wszystkich uzytkownikow sa takie same, jak nazwa ich konta
- hasla musza byc zmienione przy pierwszym zalogowaniu
- uzytkownicy musza zmieniac swoje hasla przynajmniej raz na dwa miesiace (60 dni). Na piec dni przed uplywem terminu waznosci hasla, uzytkownicy powinni byc ostrzegani o koniecznosci jego zmiany.
jeden dzien po uplywie terminu waznosci hasla, konto, ktorego uzytkownik nie dokonal zmiany hasla, zostanie zablokowane.
Nalezy zalozyc konta dla pracownikow dzialu Finanse:
Jan Makuszynski
Anna Gruszka
Adrian Nowalik
-------------------------------------------------