Cel zadania (~20 min)
Stwórz skrypt analizator.sh, który analizuje wskazany katalog i zbiera szczegółowe statystyki: liczbę plików, sumaryczny rozmiar, średnią wielkość pliku oraz największy plik z pełną ścieżką.
Wymagania
- Poproś użytkownika o ścieżkę katalogu do analizy; jeśli nie podano – użyj bieżącego (
.). - Sprawdź czy katalog istnieje (
[[ -d ]]) – jeśli nie, wyświetl błąd i zakończ z kodem 1. - Użyj
findz-print0iwhile read -d ''do bezpiecznej iteracji po plikach (obsługa nazw ze spacjami). - Dla każdego pliku pobierz rozmiar (
stat --format="%s"), zsumuj, znajdź największy. - Wyświetl czytelny raport z podziałem na MB/KB dla dużych wartości.
Wskazówki
find "$DIR" -type f -print0 znajduje wszystkie pliki i zwraca je z separatorem null (bezpieczne dla nazw ze spacjami). stat --format="%s" zwraca rozmiar w bajtach. Do konwersji użyj dzielenia w $((...)) z scale przez bc dla precyzji w MB.
Efekt działania
Skrypt wypisuje czytelny raport: liczbę plików, sumę bajtów (w MB/KB), średni rozmiar pliku oraz nazwę i rozmiar największego pliku.