#!/bin/bash
echo "ilość zajmowanego miejsca przez katalogi znajdujące się w katalogu /:"
find / -maxdepth 1 -type d -exec du -sh '{}' \;
# z kolejnym warunkiem jest troche trudniej niestety, ale mozna ewentualnie
# przyjąć że użytkownicy o którym nam chodzi mają katalogi domowe w /home
echo "liczba użytkowników w systemie wyłączając roota i użytkowników systemowych"
awk '/\/home\//' /etc/passwd | wc -l
echo "ilosc miejsca zajmowanego przez katalogi użytkowników"
find /home -maxdepth 1 -exec du -sh '{}' \;
echo "partycje i stopien zajetosci"
df -h
echo "czas pracy systemu"
uptime
tylko nie wiem jak wycinać dane fragmenty z konsoli, które wstawia się do skryptu.
Ale chodzi Ci skąd się biorą takie polecenia czy o co Ci chodzi? Takie polecenia biorą się z potrzeby ich użycia a jak ich używać to wyczytasz w podręcznikach lub plikach pomocy programów i poleceń w tym wypadku wpisujesz w terminalu:
man who
man cut
man sort
man cat
man grep
To jedno polecenie, np. to cat /proc/cpuinfo | grep “model name”| head -1 składa się tak na prawdę z trzech poleceń: cat wyświetla w tym wypadku zawartość wskazanego pliku, czyli /proc/cpuinfo. Taka kreska | oddziela polecenia. Grep ma za zadanie wyświetlić podane wyrażenie z tego pliku w tym wypadku ma pokazać wszystko co zawiera frazę model name. Polecenie Head pokazuje początkową cześć zawartości pliku. Żeby to lepiej zrozumieć to zobacz zawartość pliku:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 14
model name : Intel(R) Celeron(R) M CPU 440 @ 1.86GHz
stepping : 12
cpu MHz : 1862.061
cache size : 1024 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx constant_tsc up arch_perfmon bts pni monitor tm2 xtpr pdcm
bogomips : 3724.12
clflush size : 64
power management:
I przy pomocy wspomnianego polecenia z całego pliku pokazaną masz tylko tą linię:
model name : Intel(R) Celeron(R) M CPU 440 @ 1.86GHz