Wynik działania polecenia ls -l użytego w systemie Linux przedstawia
A.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
26524 Egzamin 20 0 66256 28252 19940 S 4,319 1,375 0:05.68 gnome-terminal-
716 root 20 0 57564 16544 7892 S 2,990 0,805 0:39.79 Xorg
1271 Egzamin 20 0 397712 173428 42216 S 0,997 8,443 1:48.89 gnome-shellB.
-rw-r--r-- 1 Egzamin users 0 2013-10-13 21:05 asso.txt
-rw-r--r-- 1 Egzamin users 0 2013-10-13 22:05 lan.txt
-rw-r--r-- 1 Egzamin users 0 2013-10-13 23:05 utk.txtC.
-rw-r--r-- 1 Egzamin users 0 10-13 23:05 asso.txt
-rw-r--r-- 1 Egzamin users 0 10-13 23:05 lan.txt
-rw-r--r-- 1 Egzamin users 0 10-13 23:05 .so.txtD.
total used free shared buffers cached
Mem: 2054064 1355904 698160 129336 46808 896744
-/+ buffers/cache: 412352 1641712
Swap: 4195324 0 4195324Polecenie ls -l w Linuksie pokazuje szczegółową listę plików i katalogów, czyli tzw. długi format listowania. W poprawnym wyniku widać typ obiektu i uprawnienia, np. -rw-r--r--, liczbę dowiązań, właściciela Egzamin, grupę users, rozmiar pliku, datę oraz godzinę modyfikacji i nazwę pliku. Znak - na początku oznacza zwykły plik, a dalsze litery r, w, x określają prawa odczytu, zapisu i wykonania dla właściciela, grupy oraz pozostałych użytkowników. To jest bardzo praktyczne, bo administrator od razu widzi, kto ma dostęp do pliku i czy np. skrypt ma prawo wykonania. Moim zdaniem ls -l to jedno z tych poleceń, które trzeba znać na pamięć, bo używa się go ciągle przy pracy w terminalu. W dobrych praktykach administracyjnych sprawdza się nim uprawnienia przed zmianą chmod, właściciela przed użyciem chown oraz daty modyfikacji przy analizie logów albo plików konfiguracyjnych. Format daty 2013-10-13 21:05 jest typowy dla czytelnego ustawienia czasu, spotykanego w GNU ls, szczególnie gdy system używa takiego stylu wyświetlania.
W tym pytaniu łatwo pomylić różne polecenia terminalowe, bo wszystkie wyniki wyglądają dość technicznie i są tabelkami. Trzeba jednak patrzeć na nazwy kolumn oraz sens danych. Wynik z kolumnami total, used, free, shared, buffers i cached dotyczy pamięci operacyjnej oraz przestrzeni swap. Taki układ kojarzy się z poleceniem free, a nie z ls -l. ls nie pokazuje zużycia RAM, buforów ani pamięci podręcznej, bo jego zadaniem jest listowanie plików w systemie plików. Z kolei widok z PID, USER, PR, NI, VIRT, RES, SHR, %CPU, %MEM i COMMAND jest charakterystyczny dla narzędzi monitorowania procesów, takich jak top albo htop. Tam obserwuje się działające programy, ich użycie procesora, pamięci i czas pracy, a nie zawartość katalogu. Najbardziej podchwytliwy jest wynik, który wygląda podobnie do długiego listowania plików, ale zawiera plik zaczynający się od kropki, np. .so.txt. Standardowe ls -l nie wyświetla plików ukrytych, czyli takich z nazwą zaczynającą się od kropki. Do tego służy dopiero ls -la albo ls -l -a. Typowy błąd myślowy polega na tym, że ktoś rozpoznaje kolumny z uprawnieniami i od razu zakłada, że każda taka tabelka musi być zwykłym wynikiem ls -l. W praktyce warto pamiętać: ls -l pokazuje szczegóły plików widocznych w katalogu, a dodatkowe przełączniki zmieniają zakres listowania. To drobiazg, ale w administracji Linuksem takie drobiazgi robią dużą różnicę.