Если вы только начинаете работать с Linux, то одна из первых команд, которую стоит изучить — это ls. Она помогает вам увидеть список файлов и папок в текущей или указанной директории.
Вместе с командой cd они составляют основу навигации в системе. В этой статье я расскажу, что такое команда ls, как её использовать и приведу простые примеры.
Что такое команда ls?
Команда ls (от английского “list”) выводит список файлов и папок в выбранной директории. По умолчанию она показывает содержимое текущей папки. Это очень полезно, когда нужно быстро понять, что находится внутри папки.
Как использовать команду ls?
В общем виде команда имеет следующий вид:
ls [опция] [директория]
Тривиальный пример использования команды – без дополнительных опций и указания директории:
[root@localhost practice]# ls
dir1 dir3 file0.txt
[root@localhost practice]#
Вывод содержит список файлов и папок в текущей директории.
Если мы хотим заглянуть в другую директорию, мы должны указать путь до нее. Это может быть как абсолютный, так и относительный путь.
Абсолютный путь:
[root@localhost practice]# ls /root/practice/dir1/
dir2 file1.txt
[root@localhost practice]#
Относительный путь:
[root@localhost practice]# ls ./dir1/
dir2 file1.txt
[root@localhost practice]#
При указании относительного пути активно используются следующие сокращения:
- ~ — домашняя директория
- . — текущая директория
- .. — родительская директория
Самые полезные опции команды ls
-a – отображение всего содержимого директории, включая скрытые файлы, чьи имена начинаются с точки
Без опции мы увидим следующий набор объектов:
[root@localhost practice]# ls
dir1 dir3 file0.txt
[root@localhost practice]#
А если включить отображение скрытых файлов, в вывод попадут . (текущая директория) .. (родительская директория) и скрытый файл .hidden.file:
[root@localhost practice]# ls -a
. .. dir1 dir3 file0.txt .hidden.file
[root@localhost practice]#
-с – вывод объектов с сортировкой по времени внесения последнего изменения. По умолчанию новые файлы расположены первыми.
Так как при подготовке данной песочницы я сначала создал директорию dir1 затем dir3 и лишь затем файл file0.txt то по времени изменения они стоят в обратном порядке:
[root@localhost practice]# ls -c
file0.txt dir3 dir1
[root@localhost practice]#
-i – показать inode, в котором находится файл
[root@localhost practice]# ls -i
50482776 dir1 194080 dir3 50583044 file0.txt
[root@localhost practice]#
-l – показать подробную информацию, включая размер, владельца и доступы
[root@localhost practice]# ls -l
итого 0
drwxr-xr-x. 3 root root 35 июл 30 12:17 dir1
drwxr-xr-x. 2 root root 23 июл 30 12:17 dir3
-rw-r--r--. 1 root root 0 июл 30 12:17 file0.txt
[root@localhost practice]#
-d – вывод сведений о директории без вывода ее содержимого
Если попробовать получить информацию о директории без использования опции -d мы получим информацию по содержимому директории:
[root@localhost practice]# ls -l dir1/
итого 0
drwxr-xr-x. 2 root root 23 июл 30 12:17 dir2
-rw-r--r--. 1 root root 0 июл 30 12:17 file1.txt
[root@localhost practice]#
С опцией, информация будет непосредственно о директории:
[root@localhost practice]# ls -ld dir1/
drwxr-xr-x. 3 root root 35 июл 30 12:17 dir1/
[root@localhost practice]#
-R – рекурсивный вывод содержимого, включая поддиректории
[root@localhost practice]# ls -R
.:
dir1 dir3 file0.txt
./dir1:
dir2 file1.txt
./dir1/dir2:
file2.txt
./dir3:
file3.txt
[root@localhost practice]#
-р – в выводе добавляет в конце названия директорий слеш
[root@localhost practice]# ls -p
dir1/ dir3/ file0.txt
[root@localhost practice]#
Использование нескольких опций одновременно
Часто информации полученной от одной из опций недостаточно, поэтому не бойтесь их комбинировать для получения наиболее точного результата.
Получение подробной информации обо всех файлах внутри директории включая скрытые:
[root@waky practice]# ls -al
итого 8
drwxr-xr-x. 4 root root 67 авг 18 04:52 .
dr-xr-x---. 5 root root 4096 июл 30 12:02 ..
drwxr-xr-x. 3 root root 35 июл 30 12:17 dir1
drwxr-xr-x. 2 root root 23 июл 30 12:17 dir3
-rw-r--r--. 1 root root 15 авг 18 05:06 file0.txt
-rw-r--r--. 1 root root 0 авг 18 04:52 .hidden.file
[root@waky practice]#
Опция -a показала скрытые файлы, а -l вывела информацию по всем отображенным файлам.
Рекурсивный вывод -R и обозначение директорий слешем -p:
[root@waky practice]# ls -Rp
.:
dir1/ dir3/ file0.txt
./dir1:
dir2/ file1.txt
./dir1/dir2:
file2.txt
./dir3:
file3.txt
[root@waky practice]#
В процессе работы с утилитой ls подбирайте опции удовлетворяющие потребности решаемой задачи, так вы запомните основные опции и их удачные комбинации.
Заключение
Команда ls — это один из самых простых и полезных инструментов в Linux для просмотра содержимого папок. С её помощью можно быстро получить нужную информацию о файлах и папках.
Если вы хотите стать более уверенным пользователем Linux, обязательно изучите разные варианты использования команды ls. Это поможет вам лучше ориентироваться в системе и управлять файлами быстрее и удобнее.
Надеюсь, эта статья помогла вам понять основы команды ls и научиться использовать её в повседневной работе!