Bash
Pliki list
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