Szukaj…


Składnia

  • ls [OPCJA] ... [PLIK] ...

Parametry

Opcja Opis
-a , --all Wyświetl wszystkie wpisy, w tym te zaczynające się od kropki
-A , - --almost-all Wyświetl wszystkie wpisy oprócz . i ..
-c Sortuj pliki według czasu zmiany
-d , --directory Wyświetl listę pozycji w katalogu
-h , --human-readable Pokaż rozmiary w formacie czytelnym dla człowieka (tj. K , M )
-H To samo co powyżej tylko z mocami 1000 zamiast 1024
-l Pokaż zawartość w formacie długiej listy
-o Format długiej listy bez informacji o grupie
-r , --reverse Pokaż zawartość w odwrotnej kolejności
-s , --size Rozmiar wydruku każdego pliku w blokach
-S Sortuj według rozmiaru pliku
--sort=WORD Sortuj zawartość według słowa. (tj. rozmiar, wersja, status)
-t Sortuj według czasu modyfikacji
-u Sortuj według czasu ostatniego dostępu
-v Sortuj według wersji
-1 Wyświetl jeden plik w wierszu

Lista plików

Polecenie ls wyświetla zawartość określonego katalogu, z wyjątkiem plików dotfiles. Jeśli nie określono żadnego katalogu, domyślnie wyświetlana jest zawartość bieżącego katalogu.

Pliki z listy są domyślnie sortowane alfabetycznie i wyrównane w kolumnach, jeśli nie mieszczą się w jednym wierszu.

$ ls
apt  configs  Documents  Fonts    Music      Programming  Templates  workspace
bin  Desktop  eclipse    git      Pictures   Public       Videos

Lista plików w formacie długiej listy

Opcja -l polecenia ls drukuje zawartość określonego katalogu w formacie długiego listowania. Jeśli nie określono żadnego katalogu, domyślnie wyświetlana jest zawartość bieżącego katalogu.

ls -l /etc

Przykładowe dane wyjściowe:

total 1204
drwxr-xr-x  3 root root    4096 Apr 21 03:44 acpi
-rw-r--r--  1 root root    3028 Apr 21 03:38 adduser.conf
drwxr-xr-x  2 root root    4096 Jun 11 20:42 alternatives
...

Wyjście najpierw wyświetla total , która wskazuje całkowity rozmiar w blokach wszystkich plików w wymienionym katalogu. Następnie wyświetla osiem kolumn informacji dla każdego pliku w wymienionym katalogu. Poniżej znajdują się szczegóły dotyczące każdej kolumny w danych wyjściowych:

Nr kolumny Przykład Opis
1.1 d Typ pliku (patrz tabela poniżej)
1.2 rwxr-xr-x Ciąg uprawnień
2) 3 Liczba twardych linków
3) root Imię właściciela
4 root Grupa właścicieli
5 4096 Rozmiar pliku w bajtach
6 Apr 21 03:44 Czas modyfikacji
7 acpi Nazwa pliku

Typ pliku

Typ pliku może być jednym z następujących znaków.

Postać Typ pliku
- Zwykły plik
b Zablokuj plik specjalny
c Plik specjalny znaków
C Plik o wysokiej wydajności („dane ciągłe”)
d Informator
D Drzwi (specjalny plik IPC tylko w Solarisie 2.5+)
l Link symboliczny
M Plik off-line („migrowany”) (Cray DMF)
n Plik specjalny sieci (HP-UX)
p FIFO (nazwany potok)
P Port (specjalny plik systemowy tylko w systemie Solaris 10+)
s Gniazdo elektryczne
? Inny typ pliku

Lista plików posortowana według rozmiaru

Opcja -S polecenia ls sortuje pliki w kolejności malejącej według rozmiaru pliku.

$ ls -l -S ./Fruits
total 444
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root  50197 Jul 28 19:19 bananas.jpg

W przypadku użycia z opcją -r kolejność sortowania jest odwrócona.

$ ls -l -S -r /Fruits
total 444
-rw-rw-rw- 1 root root  50197 Jul 28 19:19 bananas.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg

Lista plików bez użycia `ls`

Użyj funkcji rozwijania nazw plików i rozwijania nawiasów powłoki Bash, aby uzyskać nazwy plików:

# display the files and directories that are in the current directory
printf "%s\n" *

# display only the directories in the current directory
printf "%s\n" */

# display only (some) image files
printf "%s\n" *.{gif,jpg,png}

Aby przechwycić listę plików do zmiennej w celu przetworzenia, zwykle dobrą praktyką jest użycie tablicy bash :

files=( * )

# iterate over them
for file in "${files[@]}"; do
    echo "$file"
done

Wyświetl dziesięć ostatnio zmodyfikowanych plików

Poniżej wymieniono do dziesięciu ostatnio zmodyfikowanych plików w bieżącym katalogu, używając długiego formatu list ( -l ) i posortowano według czasu ( -t ).

ls -lt | head

Wyświetl wszystkie pliki, w tym pliki Dotfiles

Plik kropkowy to plik, którego nazwy zaczynają się od . . Są one zwykle ukryte przez ls i nie są wymienione, chyba że o to poproszony.

Na przykład następujące dane wyjściowe ls :

$ ls
bin  pki

Opcja -a lub --all wyświetli wszystkie pliki, w tym pliki kropkowe.

$ ls -a
.   .ansible       .bash_logout   .bashrc  .lesshst  .puppetlabs  .viminfo
..  .bash_history  .bash_profile  bin      pki       .ssh

Opcja -A lub --almost-all wyświetla wszystkie pliki, w tym pliki kropkowe, ale nie sugeruje listy . i .. Zauważ, że . to katalog bieżący, a .. to katalog nadrzędny.

$ ls -A 
.ansible       .bash_logout   .bashrc  .lesshst  .puppetlabs  .viminfo
.bash_history  .bash_profile  bin      pki       .ssh

Lista plików w formacie drzewiastym

Polecenie tree wyświetla zawartość określonego katalogu w formacie drzewiastym. Jeśli nie określono żadnego katalogu, domyślnie wyświetlana jest zawartość bieżącego katalogu.

Przykładowe dane wyjściowe:

$ tree /tmp
/tmp
├── 5037
├── adb.log
└── evince-20965
    └── image.FPWTJY.png

Użyj opcji -L polecenia tree , aby ograniczyć głębokość wyświetlania, a opcji -d , aby wyświetlić tylko katalogi.

Przykładowe dane wyjściowe:

$ tree -L 1 -d /tmp
/tmp
└── evince-20965


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow