Jak używać polecenia ls do wyświetlania listy plików i katalogów w systemie Linux
Kluczowe dania na wynos
- Polecenie ls to potężne narzędzie, którego można używać do wyświetlania listy plików i katalogów.
- Istnieje wiele przydatnych opcji i parametrów ls, które mogą zwiększyć jego funkcjonalność i uczynić go wygodniejszym w użyciu.
- ls -la to dobre polecenie, którego można użyć, jeśli chcesz zobaczyć wszystko w folderze.
ls
Codziennie używamy polecenia Linuksa, nie myśląc o tym. Szkoda. Poświęć temu trochę uwagi, a znajdziesz wiele przydatnych opcji — w tym takie, które powinieneś dodać do swojego arsenału wiersza poleceń.
ls Wyświetla listę plików i katalogów
To ls
polecenie jest prawdopodobnie pierwszym poleceniem, z którym spotyka się większość użytkowników Linuksa. Ci z nas, którzy kręcą się przy wierszu poleceń, używają go codziennie, nawet o tym nie myśląc. To może wyjaśniać, dlaczego to polecenie kryje w sobie coś więcej, niż większość użytkowników zdaje sobie sprawę. Wyświetlamy za jego pomocą listę plików, aby zobaczyć, co znajduje się w katalogu. Jeśli chcemy sprawdzić uprawnienia do pliku, wyświetlamy listę plików w długim formacie. Poza tym nie zwraca się na to uwagi.
Polecenie ls
jest jednym z tych poleceń, które oferują mnóstwo opcji. Być może to jest część problemu. Jest tak wiele opcji, jak je przeglądać, aby znaleźć te przydatne? A skoro je znalazłeś, jak je pamiętasz?
Przydatne permutacje polecenia ls
wraz z ciągami opcji i parametrów są idealnymi kandydatami na aliasy . Tak naprawdę w większości dystrybucji to, co myślisz o „nagim” ls
poleceniu, jest w rzeczywistości aliasem. Między innymi typ lstype command can be used to show the underlying definition of aliases. Let's look at the definition of
ls
:
Parametry --color=auto
są dołączane automatycznie przy każdym użyciu ls
polecenia. To właśnie zapewnia różne kolory dla różnych typów plików na listach.
Proste listy ls
Każdy, kto spędził trochę czasu korzystając z terminala Linux, wie, że domyślnie ls
wyświetla listę plików i katalogów w bieżącym katalogu.
ls
Jeśli chcesz, aby Twój wpis był wyświetlany w jednej kolumnie, użyj -1
opcji (jeden plik w wierszu):
ls -1
Za chwilę omówimy tę dziwnie wyglądającą nazwę pliku na górze listy.
Używanie ls w różnych katalogach
Aby ls
wyświetlić listę plików w katalogu innym niż bieżący, podaj ścieżkę do katalogu w ls
wierszu poleceń. Możesz także przekazać więcej niż jeden katalog do ls
i wyświetlać je jeden po drugim. W tym przypadku prosimy ls
o umieszczenie plików w dwóch katalogach, jednym o nazwie „Help”, a drugim o nazwie „gc_help”.
ls Help gc_help
Kiedy ls
wyświetli zawartość pierwszego katalogu, wyświetli zawartość drugiego. Wypisuje nazwę każdego katalogu podczas jego przetwarzania:
Korzystanie ze wzorców plików
Aby wybiórczo wyświetlić listę zestawu plików, użyj dopasowywania wzorców. Znak zapytania „ ?
” będzie reprezentował dowolny pojedynczy znak, a gwiazdka „ *
„ będzie reprezentować dowolny ciąg znaków. Aby wyświetlić listę plików lub katalogów, których nazwy zaczynają się od „ip_”, użyj tego formatu:
ls ip_*
Aby wyświetlić listę plików z rozszerzeniem „.c”, użyj tego formatu:
ls *.c
Możesz także używać funkcji ls
with grep
i wykorzystywać możliwości dopasowywaniagrep
wzorców . Poszukajmy plików, które mają w nazwie ciąg „_pin_”:
ls | grep _pin_
Działa to prawie tak samo, jak ls
samo użycie, z dwoma symbolami wieloznacznymi:
ls | grep _pin_
ls *_pin_*
Dlaczego prawie tak samo? Zwróć uwagę na różne układy. grep
wymusza na wyjściu pojedynczą nazwę pliku w formacie linii.
Znaki niedrukowalne
Może się zdarzyć, że nazwa pliku zawiera znak niedrukowalny lub kontrolny . Zwykle może się to zdarzyć, gdy rozszerzasz archiwum pobrane z Internetu lub pobrałeś repozytorium git , a oryginalny autor popełnił błąd podczas tworzenia pliku, ale go nie zauważył.
Nasz dziwny plik to jeden z następujących:
Jeśli spojrzymy na to w przeglądarce plików i naciśniemy „F2”, aby zmienić jego nazwę, znaki niedrukowalne są reprezentowane przez dziwny symbol.
Możesz użyć -b
opcji (escape), aby zobaczyć, co faktycznie zawiera nazwa pliku. Opcja ta powoduje ls
użycie sekwencji specjalnych języka programowania C do reprezentowania znaków kontrolnych.
ls -b a*
Okazuje się, że tajemniczy znak to znak nowej linii, reprezentowany w C jako „\n”.
Ignorowanie plików
Aby pominąć określone pliki na liście, użyj --hide
opcji. Załóżmy, że nie chcesz widzieć na liście plików kopii zapasowych „.bak”. Możesz użyć tego polecenia:
ls
ls --hide=*.bak
Pliki „.bak” nie są uwzględnione na drugiej liście.
Lista w długim formacie
Opcja -l
(długie zestawienie) powoduje ls
wyświetlenie szczegółowych informacji o każdym pliku.
ls -l
Jest tu wiele informacji, więc przejdźmy przez nie.
Pierwszą rzeczą, ls
która się wyświetla, jest całkowity rozmiar wszystkich plików na liście. Następnie każdy plik lub katalog jest wyświetlany w osobnym wierszu.
Pierwszy zestaw dziesięciu liter i myślników to typ pliku oraz uprawnienia właściciela, grupy i innych plików.
Już pierwszy znak reprezentuje typ pliku. Będzie to jeden z:
- – : Zwykły plik.
- b : Specjalny plik bloku.
- c : Specjalny plik znakowy.
- d : Katalog.
- l : Łącze symboliczne.
- n : plik sieciowy.
- p : Nazwany potok.
- s : Gniazdko.
Następnych dziewięć znaków to trzy grupy po trzy znaki wyświetlane w sposób ciągły. Każda grupa trzech reprezentuje uprawnienia do odczytu, zapisu i wykonywania, w tej kolejności. Jeśli pozwolenie zostanie udzielone, pojawi się r
, w
lub x
prezent. Jeśli zezwolenie nie zostało przyznane, -
wyświetlany jest łącznik.
Pierwszy zestaw trzech znaków to uprawnienia właściciela pliku. Drugi zestaw trzech uprawnień jest przeznaczony dla członków grupy, a ostatni zestaw trzech uprawnień jest przeznaczony dla innych osób.
Czasami pozwolenie na wykonanie dla właściciela jest reprezentowane przez plik s
. To jest setuid . Jeśli jest obecny, oznacza to, że plik jest wykonywany z uprawnieniami właściciela pliku, a nie użytkownika wykonującego plik.
Uprawnieniem do wykonywania dla grupy może być również plik s
. To jest bit setgid . Gdy zostanie to zastosowane do pliku, oznacza to, że plik zostanie wykonany z uprawnieniami grupy właściciela. W przypadku użycia z katalogiem wszelkie pliki utworzone w nim będą pobierać uprawnienia grupowe z katalogu, w którym są tworzone, a nie od użytkownika, który tworzy plik.
Zezwolenie na wykonanie dla innych może być czasami reprezentowane przez plik t
. To jest ten lepki kawałek . Zwykle stosuje się go do katalogów. Jeśli ta opcja jest ustawiona, niezależnie od uprawnień do zapisu i wykonywania plików ustawionych dla plików w katalogu, tylko właściciel pliku, właściciel katalogu lub użytkownik root może zmieniać nazwy plików w katalogu lub je usuwać.
Powszechnym zastosowaniem lepkiego bitu są foldery takie jak „/tmp”. Zapis mogą mieć wszyscy użytkownicy komputera. Przyklejony bit w katalogu zapewnia, że użytkownicy — i procesy przez nich uruchamiane — mogą zmieniać nazwy lub usuwać jedynie własne pliki tymczasowe.
Widzimy lepki bit w katalogu „/tmp”. Zwróć uwagę na użycie -d
opcji (katalog). Powoduje to ls
raportowanie szczegółów katalogu. Bez tej opcji ls
raport będzie dotyczył plików znajdujących się w katalogu.
ls -l -d /tmp
Liczba występująca po uprawnieniach to liczba twardych dowiązań do pliku lub katalogu. W przypadku pliku jest to zwykle jeden, ale jeśli zostaną utworzone inne twarde łącza, liczba ta wzrośnie. Katalog ma zazwyczaj co najmniej dwa twarde łącza. Jeden jest łączem do samego siebie, a drugi jest jego wpisem w katalogu nadrzędnym.
Następnie zostanie wyświetlona nazwa właściciela i grupy. Po nich następuje rozmiar pliku i data ostatniej modyfikacji pliku. Na końcu podana jest nazwa pliku.
Rozmiary plików czytelne dla człowieka
Podawanie rozmiarów plików w bajtach nie zawsze jest wygodne. Aby zobaczyć rozmiary plików w najbardziej odpowiednich jednostkach (kilobajty, megabajty itp.), użyj -h
opcji (czytelnej dla człowieka):
ls -l -h
Wyświetlanie ukrytych plików
Aby zobaczyć ukryte pliki, użyj -a
opcji (wszystkie):
ls -l -a
Dwa wpisy „.” i „..” reprezentują odpowiednio katalog bieżący i katalog nadrzędny. Plik o nazwie „.base_settings” jest teraz widoczny po raz pierwszy.
Pomijanie. I. . z zestawień
Jeśli nie chcesz, aby Twój wpis był zaśmiecony wpisami „.” i „..”, ale chcesz widzieć ukryte pliki, użyj opcji ( -A
prawie wszystkich):
ls -l -A
Ukryty plik jest nadal wyświetlany, ale wpisy „.” i „..” są pomijane.
Rekurencyjne wyświetlanie katalogów
Aby wyświetlić ls
listę plików we wszystkich podkatalogach, użyj -R
opcji (rekurencyjnej).
ls -l -R
ls
przechodzi przez całe drzewo katalogów poniżej katalogu początkowego i wyświetla listę plików w każdym podkatalogu.
Wyświetlanie UID i GID
Aby zamiast nazwy użytkownika i grupy wyświetlić identyfikator użytkownika i grupę, użyj -n
opcji (numeryczny uid i gid).
ls -n
Sortowanie ofert
Listę możesz sortować według rozszerzenia, rozmiaru pliku lub czasu modyfikacji. Tych opcji nie trzeba używać w przypadku długiego formatu listy, ale zazwyczaj ma to sens. Jeśli sortujesz według rozmiaru pliku, warto sprawdzić rozmiary plików na liście. Podczas sortowania według typu rozszerzenia długi format listy nie jest tak ważny.
Aby posortować według rozszerzenia, użyj -X
opcji (sortuj według rozszerzenia).
ls -X -1
Katalogi są wymienione jako pierwsze (bez żadnych rozszerzeń), a następnie pozostałe w kolejności alfabetycznej, zgodnie z rozszerzeniami.
Aby posortować według rozmiaru pliku, użyj -S
opcji (sortuj według rozmiaru pliku).
ls -l -h -S
Kolejność sortowania jest od największego do najmniejszego.
Aby posortować ogłoszenie według czasu modyfikacji należy skorzystać z -t
opcji (sortuj według czasu modyfikacji).
ls -l -t
Lista jest sortowana według czasu modyfikacji.
Jeśli czas modyfikacji pliku przypada na bieżący rok, wyświetlane informacje to miesiąc, dzień i godzina. Jeżeli data modyfikacji nie przypadała na bieżący rok, wyświetlane informacje to miesiąc, dzień i rok.
Szybkim sposobem uzyskania najnowszych i najstarszych plików w katalogu jest użycie ls
poleceń head
i tail
.
Aby uzyskać najnowszy plik lub katalog, użyj tego polecenia:
ls -t | head -1
Aby uzyskać najstarszy plik lub katalog, użyj tego polecenia:
ls -t | tail -1
Aby odwrócić kolejność sortowania
Aby odwrócić dowolną kolejność sortowania, użyj -r
opcji (odwróć).
ls -l -h -S -r
Lista jest teraz uporządkowana od najmniejszego pliku do największego.
I jest jeszcze więcej
Sprawdź stronę podręcznika ls
, jest o wiele więcej opcji . Niektóre z nich spełniają nieco niejasne przypadki użycia, ale od czasu do czasu będziesz zadowolony, że o nich wiesz.
Czy potrzebujesz zobaczyć znaczniki czasu plików z maksymalną precyzją, jaką może zapewnić Linux? Skorzystaj z opcji pełnego etatu:
ls --full-time
Być może chcesz zobaczyć numer i-węzła plików? Użyj opcji i-węzła:
ls -i
Czy pracujesz na wyświetlaczu monochromatycznym i chcesz wyeliminować ryzyko pomylenia plików z katalogami i łączami? Użyj opcji klasyfikacji i ls
dołącz jedną z nich do każdego wpisu na aukcji:
- / : Katalog.
- @ : Dowiązanie symboliczne.
- | : Nazwana rura.
- = : Gniazdo.
- * : Pliki wykonywalne
ls -F
Pokop trochę. Przekonasz się, że ls
to bogata żyła, i będziesz nadal znajdować klejnoty.
Polecenia Linuksa |
|
Akta |
tar · pv · cat · tac · chmod · grep · diff · sed · ar · człowiek · pushd · popd · fsck · dysk testowy · seq · fd · pandoc · cd · $PATH · awk · dołącz · jq · złóż · uniq · journalctl · ogon · stat · ls · fstab · echo · mniej · chgrp · chown · rev · wygląd · ciągi znaków · wpisz · zmień nazwę · zip · rozpakuj · montuj · umount · zainstaluj · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · łata · konwertuj · rclone · shred · srm · scp · gzip · chattr · wytnij · znajdź · umask · wc · tr |
Procesy |
alias · ekran · góra · ładny · renice · postęp · strace · systemd · tmux · chsh · historia · w · partia · darmowy · który · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · limit czasu · ściana · tak · zabij · uśpienie · sudo · su · czas · groupadd · usermod · grupy · lshw · zamknięcie · ponowne uruchomienie · zatrzymanie · wyłączenie · hasło · lscpu · crontab · data · bg · fg · pidof · nohup · pmap |
Sieć |
netstat · ping · traceroute · ip · ss · whois · fall2ban · bmon · dig · palec · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw · arping · zapora sieciowa |
Dodaj komentarz