ls, komenda

Działanie

Wyświetlanie zawartości katalogu

Składnia

Aby wyświetlić zawartość katalogu lub nazwę pliku

ls [ -1 ] [ -A ] [ -C ] [ -E ] [ -F ] [-H | - ] [ -N ] [ -R ] [ ZS ] [ -X] [ -a ] [ -b ] [ -c ] [ -d ] [ -e ] [ -f ] [ -g ] [ -i ] [-k] [ -l ] [ -m ] [ -n ] [ -o ] [ -p ] [ -q ] [ -r ] [ S ] [ -t ] [ -u ] [ -U ] [ -x ] [ Plik ... ]

Aby wyświetlić zawartość katalogu

ls -f [ -C ] [ -d ] [ -i ] [ -m ] [ -s ] [ -X] [ -x ] [ -1 ] [ -U ] [ Katalog ... ]

Opis

Komenda ls zapisuje w standardowym wyjściu zawartość każdego podanego parametru Directory lub nazwy każdego parametru File , wraz z innymi informacjami, które zostaną wyświetlone z flagami. Jeśli nie zostanie podany parametr Plik lub Katalog , komenda ls wyświetli zawartość bieżącego katalogu.

Określenie więcej niż jednej opcji w parach wzajemnie wykluczających się nie jest traktowane jako błąd. Ostatnia opcja określona w każdej parze określa format wyjściowy.

Domyślnie komenda ls wyświetla wszystkie informacje w kolejności alfabetycznej według nazwy pliku. Kolejność zestawiania jest określana przez zmienną środowiskową LANG lub LC_COLLATE .

Gdy komenda ls wyświetla zawartość katalogu, nie wyświetla on pozycji dla plików, których nazwy rozpoczynają się od . (kropka), o ile nie zostanie użyta opcja -a lub -A . Jeśli komenda jest wykonywana przez użytkownika root, domyślnie używana jest opcja -A .

Istnieją trzy główne sposoby formatowania danych wyjściowych:

  • Wyświetla jedną pozycję na wiersz.
  • Aby wyświetlić listę pozycji w wielu kolumnach, należy podać opcję -C lub -x . Opcja -C jest formatem domyślnym, gdy dane wyjściowe są dostępne dla TTY. Komenda ls wyświetla dane wyjściowe pojedynczej kolumny, jeśli nazwy plików lub katalogów są zbyt długie.
  • Wyświetl listę pozycji z serii rozdzielanych przecinkami, podając opcję -m .

Aby określić liczbę pozycji znaków w wierszu wyjściowym, komenda ls używa zmiennej środowiskowej COLUMNS . Jeśli ta zmienna nie jest ustawiona, komenda pobiera bieżącą wartość kolumny na ekranie. Jeśli komenda ls nie może określić liczby pozycji znaków przy użyciu jednej z tych metod, używa ona wartości domyślnej 80.

Tryb wyświetlany z opcją -U jest taki sam, jak w przypadku opcji -l , z wyjątkiem dodania znaku 11th , który jest interpretowany w następujący sposób:
Element Opis
E Wskazuje, że plik zawiera informacje o atrybutach rozszerzonych (EA). Plik EA zbioru jest wyświetlany za pomocą komendy getea .
- Wskazuje, że plik nie zawiera rozszerzonych informacji o atrybutach.
e Wskazuje, że plik jest zaszyfrowany.

Szyfrowanie ma pierwszeństwo przed obecnością list kontroli dostępu (ACL) i innych typów EAs.

Tryb wyświetlany z opcjami -e i -l jest interpretowany w następujący sposób:

Jeśli pierwszy znak to:

Element Opis
D Obiekt jest katalogiem.
B Obiekt jest blokiem pliku specjalnego.
c Obiekt jest znakiem pliku specjalnego.
b Pozycja jest dowiązaniem symbolicznym i albo podano opcję -N , albo dowiązanie symboliczne nie wskazuje istniejącego pliku.
system Obiekt jest plikiem specjalnym typu FIFO.
s Obiekt jest gniazdem lokalnym.
- Obiekt jest zwykłym plikiem.

Kolejne dziewięć znaków jest podzielone na trzy zestawy o długości trzech znaków. Pierwszy zestaw trzech znaków pokazuje uprawnienia właściciela. Drugi zestaw znaków pokazuje uprawnienia grupy. Ostatni zestaw znaków pokazuje uprawnienia pozostałych użytkowników do tego pliku. Te trzy znaki w każdym zestawie oznaczają odpowiednio uprawnienia do odczytu, zapisu i wykonywania pliku. Uprawnienie do wykonywania katalogu umożliwia przeszukiwanie katalogu określonego pliku.

Uprawnienia są oznaczone w następujący sposób:

Element Opis
r Odczytaj
w write (edit) (zapis – edycja)
system execute (search) (wykonanie – przeszukiwanie)
- brak uprawnienia

Znak uprawnienia do wykonywania grupy to s , jeśli plik ma tryb set-group-ID (ID grupy). Znak uprawnienia do wykonywania użytkownika to s , jeśli plik ma tryb set-user-ID (ID użytkownika). Ostatnim znakiem trybu (zwykle x lub -) jest T , jeśli ustawiony jest bit 01000 (ósemkowy) trybu (patrz komenda chmod dla znaczenia tego trybu). Wskazania identyfikatorów set-ID i 01000 bit w trybie są kapitalizowane (odpowiednio:S i T), jeśli odpowiednie uprawnienie do wykonywania nie jest ustawione. Tryb t wskazuje, że bit tymczasowego przypisania jest włączony dla pliku lub katalogu.

Tryb wyświetlany za pomocą opcji -e jest taki sam, jak w przypadku opcji -l , z wyjątkiem dodania znaku 11th , który jest interpretowany w następujący sposób:

Element Opis
+ Wskazuje, że plik zawiera rozszerzone informacje o zabezpieczeniach. Na przykład plik może mieć rozszerzone atrybuty ACL, TCBlub TP w trybie.

Informacje o kontroli dostępu (ACL) dla pliku są wyświetlane za pomocą komendy aclget . Wartości atrybutów TCB i TP są wyświetlane za pomocą komendy chtcb .

- Wskazuje, że plik nie zawiera rozszerzonych informacji o zabezpieczeniach.

Po wyświetleniu wielkości plików znajdujących się w katalogu komenda ls wyświetla łączną liczbę bloków, w tym bloków pośrednich.

Flagi

Element Opis
-A Wyświetla listę wszystkich pozycji z wyjątkiem . (kropka) i .. (dot-dot).
-a Wyświetla listę wszystkich pozycji w katalogu, w tym wpisy rozpoczynające się od . (kropka).
-b Wyświetla znaki niedrukowalne w notacji ósemkowej (\nnn).
-c Używa czasu ostatniej modyfikacji i-węzła do sortowania (jeśli jest używany z opcją -t ) lub do wyświetlania (gdy jest używany z opcją -l ). Ta opcja nie ma żadnego wpływu, jeśli nie jest używana z opcją -t lub -l .
-C Umożliwia sortowanie danych wyjściowych w pionie w formacie wielokolumnowego. Jest to metoda domyślna, gdy dane wyjściowe są przeznaczone do terminalu.
-d Wyświetla tylko informacje o nazwie katalogu. Katalogi są traktowane jak pliki, co jest pomocne w przypadku korzystania z opcji -l w celu uzyskania statusu katalogu.
-e Wyświetla tryb (w tym informacje o zabezpieczeniach), liczbę odsyłaczy, właściciela, grupę, wielkość (w bajtach), czas ostatniej modyfikacji i nazwę każdego pliku. Jeśli plik jest plikiem specjalnym, pole wielkości zawiera główne i drugorzędne numery urządzeń. Jeśli plik jest dowiązaniem symbolicznym, nazwa ścieżki pliku dowiązanego do pliku jest drukowana poprzedzona znakiem-> (minus, większe niż). Wyświetlane są atrybuty dowiązania symbolicznego.
-E Wyświetla atrybuty przydziałów pliku, które istnieją w systemach plików Vxfs, takie jak rezerwacja miejsca, wielkość stałego przydziału i informacje na temat flagi przydziału przydziału. Należy podać opcję -l z tą flagą. W przeciwnym razie komenda ls zignoruje opcję -E i zakończy wykonywanie.
-F Wyświetla listę nazw w każdym gnieździe dla każdego katalogu podanego w parametrze Katalog . Ta opcja wyłącza opcje -l, -t, -si -r , a następnie włącza opcję -a . Kolejność pozycji jest kolejką, w której wpisy pojawiają się w katalogu.
-F Umieszcza znak/(ukośnik) po każdej nazwie pliku, jeśli jest to katalog, znak * (gwiazdka), jeśli plik może być wykonany, znak = (znak równości), jeśli plik jest gniazdem, znak | (potok), jeśli plik jest plikiem FIFO, oraz znak @ dla dowiązania symbolicznego. Dowiązania symboliczne, które są nazwane jako operandy, nie są śledzione, chyba że podano opcję -H lub -L .
-g Wyświetla te same informacje, co opcja -l , z wyjątkiem opcji -g , która powoduje pominięcie wyświetlania informacji o właścicielu i dowiązaniem symbolicznym.
-H Jeśli dowiązanie symboliczne odwołujące się do pliku typu katalog jest określone w wierszu komend, komenda ls ocenia informacje o pliku i typ pliku, aby były to pliki, do których odwołuje się odsyłacz, a nie sam odsyłacz. Jednak komenda ls zapisuje nazwę samego odsyłacza, a nie plik, do którego odwołuje się odsyłacz.
-i Wyświetla numer i-węzła w pierwszej kolumnie raportu dla każdego pliku. Jeśli system plików ma wewnętrzny obraz stanu, katalog .snapshot i cała jego zawartość nie mają unikalnych numerów i-węzłów.
-k Ustawia wielkość bloku dla opcji -s oraz liczbę bloków w katalogu zapisanej dla opcji -l, -n, -gi -o do 1024 bajtów.
-L Wyświetla zawartość pliku lub katalogu, do którego odwołuje się odsyłacz. Jest to działanie domyślne. Po nich następują dowiązania symboliczne. Jeśli używana jest opcja -l , opcja -N staje się wartością domyślną i nie są stosowane żadne dowiązania symboliczne. Gdy używana jest opcja -l , tylko opcja -L może przesłonić wartość domyślną -N .
-l (Małe litery L) Wyświetla tryb, liczbę odsyłaczy, właściciela, grupę, wielkość (w bajtach) i czas ostatniej modyfikacji dla każdego pliku. Jeśli plik jest plikiem specjalnym, pole wielkości zawiera główne i drugorzędne numery urządzeń. Jeśli czas ostatniej modyfikacji jest dłuższy niż sześć miesięcy temu, pole godziny jest wyświetlane w formacie miesiąc daty roku , gdzie jako pliki zmodyfikowane w ciągu sześciu miesięcy, pole czasu jest wyświetlane jako miesiąc daty i godziny .

Jeśli plik jest dowiązaniem symbolicznym, nazwa ścieżki pliku dowiązanego do pliku jest drukowana poprzedzona przez->. Wyświetlane są atrybuty dowiązania symbolicznego. Opcja -n, -gi -o przesłania opcję -l .

Uwagi:
  1. Po dowiązanej symbolicznie pliku następuje strzałka i zawartość dowiązania symbolicznego.
  2. Wydajność komendy ls , gdy jest używana z opcją -l , można poprawić, wykonując komendę mkpasswd . Jest to pomocne w sytuacji, gdy katalog zawiera pliki należące do różnych użytkowników, takie jak katalog /tmp .
-M Używa formatu wyjściowego strumienia (seria rozdzielana przecinkami).
-n Wyświetla te same informacje, co opcja -l , z tą różnicą, że opcja -n powoduje wyświetlenie identyfikatora użytkownika i grupy zamiast nazw użytkowników i grup.
-N Podczas określania statusu pliku nie są one zgodne z dowiązaniami symbolicznymi.

Uwaga: Jeśli używane są obie opcje -L i -N , zostanie zdominowana ostatnia. Ponadto za każdym razem, gdy zostanie podane dowiązanie symboliczne, które zawiera znak/(ukośnik) jako znak końcowy, odsyłacz zostanie automatycznie śledzony niezależnie od używanych opcji.

-O Wyświetla te same informacje, co opcja -l , z wyjątkiem opcji -o , która powoduje pominięcie wyświetlania informacji o grupie i dowiązaniem symbolicznym.
-P Jeśli ten plik jest katalogiem, po każdej nazwie pliku umieszcza się ukośnik. Jest to przydatne podczas tworzenia potoku danych wyjściowych komendy ls do komendy pr w następujący sposób:
ls  -p |  pr  -5  -t  -w80
-q Wyświetla znaki niedrukowalne w nazwach plików jako?(znak zapytania).
-r Powoduje odwrócenie kolejności sortowania, co powoduje, że w zależności od potrzeb, należy najpierw odwracać literę lub od początku najstarszą.
-R Wyświetla wszystkie podkatalogi rekurencyjnie.
-S Podaje wielkość w kilobajtach (łącznie z blokami pośrednimi) dla każdej pozycji.
-S Umożliwia sortowanie według wielkości pliku klucza podstawowego (w kolejności malejącej), a klucz drugorzędny jest nazwą pliku w kolejności zestawiania (w kolejności rosnącej).
-t Umożliwia sortowanie według czasu ostatniej modyfikacji (pierwszej kolejności) zamiast według nazwy. W przypadku dowiązania symbolicznego czas używany jako klucz sortowania jest taki sam jak klucz dowiązania symbolicznego.
-U Wyświetla podobne informacje, jak flaga -l . Wyświetla tryb (w tym informacje o zabezpieczeniach, nazwane rozszerzone informacje o atrybutach i informacje o szyfrowaniu), liczbę odsyłaczy, właściciela, grupę, wielkość (w bajtach), czas ostatniej modyfikacji i nazwę każdego pliku. Jeśli plik jest plikiem specjalnym, pole wielkości zawiera główne i drugorzędne numery urządzeń. Jeśli plik jest dowiązaniem symbolicznym, nazwa ścieżki pliku dowiązanego do pliku jest drukowana poprzedzona znakiem -> (minus, większe niż). Wyświetlane są atrybuty dowiązania symbolicznego.
-u Używa czasu ostatniego dostępu, zamiast czasu ostatniej modyfikacji, do sortowania (jeśli jest używany z opcją -t ) lub do wyświetlenia (gdy jest używany z opcją -l ). Ta opcja nie ma żadnego wpływu, jeśli nie jest używana z opcją -t lub -l .
-X Umożliwia sortowanie danych wyjściowych poziomo w formacie wielokolumnowego.
-X Drukuje długie nazwy użytkowników, jeśli są używane z innymi opcjami, które wyświetlają nazwy użytkowników. Górny limit jest określany za pomocą atrybutu max_logname atrybutu ODM w klasach obiektów PdAt i CuAt . Jeśli nazwa użytkownika jest większa niż wartość atrybutu max_logname , zostanie ona obcięta do liczby znaków określonej przez atrybut max_logname , mniej niż jeden znak.
-1 Wymusza wyjście do formatu jednowierszowego w jednym wierszu. Jest to wartość domyślna, gdy dane wyjściowe nie są kierowane do terminalu.
Uwagi:
  • Jeśli zostanie podana dowolna z opcji -l, -n, -s, -glub -o , każdy plik, który znajduje się w katalogu, jest poprzedzony wierszem statusu, który wskazuje liczbę bloków systemu plików zajmowanych przez pliki.
  • Jeśli opcja -k nie jest określona wraz z żadną z opcji -l, -n, -s, -g, lub -o , linia statusu wskazuje liczbę bloków systemu plików zajętych przez pliki w jednostkach o wielkości 512 bajtów.
  • Jeśli zostanie podana opcja -k wraz z dowolną z opcji -l, -n, -s, -g, lub -o , wiersz statusu wskazuje liczbę bloków systemu plików zajmowanych przez pliki w jednostkach o wielkości 1024 bajtów.
  • Dodatkowo, w razie potrzeby, liczba bloków systemu plików zajmowanych przez pliki w katalogu jest zaokrąglana do najbliższej liczby całkowitej jednostek.
  • W środowisku ustawień narodowych POSIX suma %u\n jest formatem wyjściowym, który reprezentuje liczbę jednostek w katalogu.

Status wyjścia

Ta komenda zwraca następujące wartości wyjścia:

Element Opis
0 Wszystkie pliki zostały pomyślnie zapisane.
>0 Wystąpił błąd.

Bezpieczeństwo

Uwaga użytkowników RBAC: Ta komenda może wykonywać operacje uprzywilejowane. Operacje uprzywilejowane mogą wykonywać tylko użytkownicy uprzywilejowani. Więcej informacji na temat autoryzacji i uprawnień zawiera baza danych komend uprzywilejowanych w sekcji Zabezpieczenia. Listę autoryzacji i uprawnień związanych z tą komendą można znaleźć w opisach komendy lssecattr i podkomendy getcmdattr.

Przykłady

  1. Aby wyświetlić wszystkie pliki w bieżącym katalogu, wpisz:
    ls -a
    Spowoduje to wyświetlenie listy wszystkich plików, w tym . (kropka), .. (dot-dot), oraz inne pliki o nazwach zaczynające się od kropki.
  2. Aby wyświetlić szczegółowe informacje, wpisz:
    ls   -l chap1  .profile
    To wyświetla długą listę zawierającą szczegółowe informacje ochap1zapewnienia odporności.profile.
  3. Aby wyświetlić szczegółowe informacje na temat katalogu, wpisz:
    ls   -d   -l  .  manual  manual/chap1
    Wyświetla długą listę katalogów.zapewnienia odpornościmanual, i dla plikumanual/chap1. Bez opcji -d spowoduje to wyświetlenie listy plików w.zapewnienia odpornościmanualkatalogów zamiast szczegółowych informacji o samych katalogach.
  4. Aby wyświetlić listę plików w kolejności modyfikacji, należy wpisać:
    ls   -l -t
    Spowoduje to wyświetlenie długiej listy plików, które zostały ostatnio zmodyfikowane, a następnie starszych plików.
  5. Aby wyświetlić szczegółowe informacje z rozwiniętą nazwą użytkownika i grupy, wpisz:
    ls  -lX .profile
    Spowoduje to wyświetlenie długiej listy zawierającej szczegółowe informacje na temat pliku .profile.
  6. Aby wyświetlić dane o tym, czy atrybuty rozszerzone są ustawione dla plików w bieżącym katalogu, należy wpisać:
    ls -U
    • W przypadku wydań AIX® 5.3 i wcześniejszych:

      Przykładowe dane wyjściowe:

        -rwSr-x---+   1 root     system           28 Apr 29 03:23 only_aixc
        -rwSr-x---E   1 root     system            4 Apr 29 03:23 only_aixc_ea
        -rw-r--r--E   1 root     system            4 Apr 29 03:23 only_ea
        ----------+   1 root     system          265 Apr 29 03:23 only_nfs4
        ----------E   1 root     system           64 Apr 29 03:23 only_nfs4_ea
        -rw-r--r---   1 root     system            4 Apr 29 03:23 only_regular
    • W przypadku wydań AIX 6.1 i nowszych:

      Przykładowe dane wyjściowe:

        -rwSr-x---+    1 root     system           28 Apr 29 03:23 only_aixc
        -rwSr-x---E    1 root     system            4 Apr 29 03:23 only_aixc_ea
        -rw-r--r--E    1 root     system            4 Apr 29 03:23 only_ea
        ----------+    1 root     system          265 Apr 29 03:23 only_nfs4
        ----------E    1 root     system           64 Apr 29 03:23 only_nfs4_ea
        -rw-r--r---    1 root     system            4 Apr 29 03:23 only_regular
        -rwxrwxr-xe    2 root     system          256 May 25 16:27 encry_ex 
  7. Aby wyświetlić informacje o liczbie bloków systemu plików w jednostkach o wielkości 512 bajtów dla plików w bieżącym katalogu, wpisz:
    ls -l
    Przykładowe dane wyjściowe:
    total 16
    -rw-r--r--    1 root     system           22 Feb 05 05:29 sample1
    -rw-r--r--    1 root     system           12 Feb 05 05:29 sample2
  8. Aby wyświetlić informacje o liczbie bloków systemu plików w jednostkach o wielkości 1024 bajtów dla plików w bieżącym katalogu, należy wpisać:
     ls -lk
    Przykładowe dane wyjściowe:
    total 8
    -rw-r--r--    1 root     system           22 Feb 05 05:29 sample1
    -rw-r--r--    1 root     system           12 Feb 05 05:29 sample2

Pliki

Element Opis
/usr/bin/ls Zawiera komendę ls .
/etc/passwd Zawiera identyfikatory użytkowników.
/etc/group Zawiera identyfikatory grup.
/usr/share/lib/terminfo/* Zawiera informacje o terminalu.