W pracy administratora często zdarza się potrzeba wyszukania jakiegoś pliku wiedząc jedynie ile może on zajmować przestrzeni dyskowej lub też chcemy znaleźć pliki większe lub mniejsze niż określony rozmiar. Przydaje się to szczególnie w przypadku plików z logami itp. W tym przykładzie posłużymy się poleceniem "find" w raz z odpowiednimi przełącznikami. Wcześniej przygotowane zostaną pliki o określonych rozmiarach w katalogu /tmp/test. Następnie do określania rozmiarów posłużymy się poleceniem "du" wraz z odpowiednimi przełącznikami sortującymi wyniki.
Krok 1 - Przygotowanie plików
# cd /tmp
# mkdir test
# cd test
dd if=/dev/zero of=test.data1M bs=1M count=1
dd if=/dev/zero of=test.data2k bs=2k count=1
dd if=/dev/zero of=test.data200k bs=200k count=1
dd if=/dev/zero of=test.data5M bs=5M count=1
dd if=/dev/zero of=test.data20k bs=20k count=1
dd if=/dev/zero of=test.data80k bs=80k count=1
dd if=/dev/zero of=test.data1k bs=1k count=1
Krok 2 - Wyszukiwanie plików względem ich rozmiaru.
Wyszukanie plików większych niż 2k
# find . -type f -size +2k
./test.data5M
./test.data1M
./test.data200k
./test.data20k
./test.data80k
Wyszukanie plików o rozmiarze równym 2k
# find . -type f -size 2k
./test.data2k
Wyszukanie plików mniejszych niż 2k
# find . -type f -size -2k
./test.data1k
Wyszukanie plików większych niż 1MB
# find . -type f -size +1M
./test.data5M
Powyższe przykłady wyjaśniają sposób wyszukania plików względem ich rozmiaru.
Jeżeli do kreślenia rozmiaru postanowimy skorzystać z polecenia "du" polecenie służące do określania rozmiarów może przybrać następującą postać:
Wyszukiwanie 10 największych katalogów
Jeżeli do kreślenia rozmiaru postanowimy skorzystać z polecenia "du" polecenie służące do określania rozmiarów może przybrać następującą postać:
Wyszukiwanie 10 największych katalogów
du -a | sort -n -r|head -n 10
Powyższe wyświetli 10 katalogów w danym katalogu w jakim się znajdujemy w kolejności od najwięcej największego do najmniejszego zależnie od ilości danych w podkatalogach. Krótko mówiąc 10 największych podkatalogów w danym katalogu.
Jeżeli interesuje nas 10 największych plików w danym katalogu możemy je wyświetlić używając polecenia:
Wyszukiwanie 10 największych plików
ls -lSh|head -n 10
Wyszukiwanie 10 największych plików we wskazanej lokalizacji (np. opt) przy użyciu find
find /opt -type f -ls | sort -r -n -k 7 | head -n 10
Świetnie prowadzony blog!
OdpowiedzUsuńwspaniały blok i fajne treści
OdpowiedzUsuń