Skrypty bash – przykładowe ćwiczenia

Mój bieżący katalog: (wyświetl katalog)
Mona nazwa hosta: (wstaw wartość hostname)
Zawartość mojego katalogu domowego: (lista plików)

—————————————————————-

czy istnieje /var/log/www i /etc/ssh?
jeżeli tak wylistuj zawartość
jeżeli nie wyswietl komunikat
zastosuj zmienną path

—————————————————————-

Czy istnieje user?
Jak istnieje wyświetl odpowiedni komunikat
Jak nie utwórz i wyświetl komunikat

Skrypt uruchom 2 razy.

—————————————————————-

sprawdź czy istnieje katalog /home/userek
jak nie istnieje utwórz, jak istnieje komunikat

sprawdź czy istnieje użytkownik user
jak tak komunikat
jak nie utwórz użytkownika z powyższym katalogiem

katalog wrzuć do zmiennej path

—————————————————————-

sprawdź czy istnieje katalog /tmp/dir1
jak tak komunikat, jak nie utwórz i komunikat

sprawdź czy istnieje plik /tmp/dir1/plik
jak tak komunikat, jak nie utwórz

wykorzystać 2 zmienne path

—————————————————————-

1. sprawdź czy istnieje użytkownik technik (jak tak przejdź do punktu 3, jak nie istnieje do punktu 2)
2. utwórz użytkownika technik:
– katalog domowy /home/technik
– utwórz katalog domowy
– hasło ZAQ!2wsx
– powłoka /bin/bash
– id: 1122
3. sprawdź czy istnieje grupa uczniowie
4. przypisz użytkownika do grupy

—————————————————————-

1. sprawdź czy istnieje katalog /home/technik123
jeżeli istnieje komunikat
jeżeli nie utwórz i wyświetl komunikat
2. sprawdź czy istnieje użytkownik technik1
jeżeli istnieje komunikat
jeżeli nie przejdź do następnego punktu
3. utwórz użytkownika technik1:
– katalog domowy /home/technik123
– nie twórz katalog domowego
– hasło ZAQ!2wsx
– powłoka /bin/sh
– id: 1234
– konto wygasa za miesiąc
4. sprawdź czy istnieje grupa nauczyciele
jeżeli istnieje komunikat
jeżeli nie utwórz i wyświetl komunikat
5. przypisz utworzonego użytkownika do utworzonej grupy

—————————————————————-

sprawdź czy istnieje użytkownik podany jako pierwszy argument
sprawdź czy istnieje grupa podana jako drugi argument
wyświetl ilość podanych argumentów
wyświetl wszystkie podane argumenty

—————————————————————-

za pomocą pętli for wyświetl liczby parzyste z zakresu 0-20

—————————————————————-

za pomocą pętli for wyświetl kolejno wszystkie dni tygodnia

—————————————————————-

za pomocą pętli for wyświetl wszystkie pliki w katalogu domowym

—————————————————————-

za pomocą pętli for wypisz 5 razy otrzymany argument dopisując na końcu kolejne liczby wykonania

uruchomienie: ./skrypt.sh plik
efekt:
plik1
plik2
plik3
plik4
plik5

—————————————————————-

za pomocą pętli for wypisz 5 razy otrzymany pierwszy argument dopisując na końcu kolejne liczby wykonania, natomiast do drugiego argumentu dodaj na początek /tmp/ i na końcu numer iteracji

uruchomienie: ./skrypt.sh plik pliczek
efekt:
plik1 /tmp/pliczek1
plik2 /tmp/pliczek2
plik3 /tmp/pliczek3
plik4 /tmp/pliczek4
plik5 /tmp/pliczek5

—————————————————————-

do zmiennej data wpisz aktualną datę w formacie 2026-29-01
utwórz archiwum, które będzie zawierało wszystkie pliki z katalogu domowego użytkownika technik o nazwie technik_bckp_DATA

—————————————————————-

za pomocą pętli for utwórz 5 użytkowników dodając na końcu jego nazwy numer iteracji, jako katalog domowy podaj /home/drugi_argument z dodanym na końcu numerem iteracji
nazwa usera podana jako pierwszy argument, nazwa katalogu domowego podana jako drugi argument

uruchomienie: ./skrypt.sh uczen 3TI
efekt:
uczen1 z katalogiem /home/3TI1
uczen2 z katalogiem /home/3TI2
uczen3 z katalogiem /home/3TI3
uczen4 z katalogiem /home/3TI4
uczen5 z katalogiem /home/3TI5

—————————————————————-

sprawdź czy istnieje 5 kolejnych użytkowników podanych jako argument

uruchomienie: ./skrypt.sh uczen
efekt:
uczen1 istnieje
uczen2 nie istnieje
uczen3 istnieje
uczen4 nie istnieje
uczen5 istnieje

—————————————————————-

do pliku stats-data_w_formacie_rokmiesiacdzien.txt zapisz status usług: ssh i apache2
lokalizacje pliku wrzuć do zmiennej

—————————————————————-

utwórz kopie zapasową plików: /etc/ssh/sshd_config i /root/.bashrc . Kopie zapisz w katalogu /root/bckps (sprawdź czy katalog istnieje, jak nie to utwórz)
kopie powinny być w formacie: sshd_config_data i .bashrc_data
data w formacie dzień-miesiac-rok-godzina:minuta

—————————————————————-

plik tworzący statystyki serwera, efekt finalny, plik stats_data:
data w formacie: rok-miesiac-dzien

#####
status usługi ssh
#####

#####
status usługi apache2
#####

#####
wyświetlenie listy obecnie zalogowanych użytkowników
#####

#####
wyświetlenie informacji o wolnym miejscu na dysku
#####

#####
wyświetlenie informacji o wolnej pamięci RAM
#####

#####
wyświetlenie uptime systemu
#####

W celu świadczenia usług na najwyższym poziomie stosujemy pliki cookies, które będą zamieszczane w Państwa urządzeniu (komputerze, laptopie, smartfonie). W każdym momencie mogą Państwo dokonać zmiany ustawień Państwa przeglądarki internetowej i wyłączyć opcję zapisu plików cookies. View more
Zaakceptuj