15 примеров команды ls
Команда ls — одна из наиболее часто используемых команд в Linux. Я считаю, что команда ls — это первая команда, которую вы используете, когда попадаете в командную строку.
Мы используем команду ls ежедневно, хотя мы можем не знать и никогда не использовать все доступные опции ls. В этой статье мы постарались охватить как можно больше параметров.
1. ls без параметров
ls без опций отображает список файлов и каталогов в чистом формате, где мы не сможем просматривать такие детали, как типы файлов, размер, дата и время изменения, разрешения и ссылки и т. д.
# ls001.pcap Desktop Downloads index.html install.log.syslog Pictures Templateanaconda-ks.cfg Documents fbcmd_update.php install.log Music Public Videos
2. ls с параметром -l
Здесь, ls -l (l — символ, а не единица) показывает файл или каталог вместе с его размером, а также дату и время изменения, права и владельца.
# ls -ltotal 176-rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap-rw-------. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfgdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktopdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documentsdrwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloads-rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php-rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html-rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log-rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslogdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Musicdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Picturesdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Publicdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templatesdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videos
3. Просмотр скрытых файлов
Показ всех файлов, включая скрытые, которые начинаются с «.»
# ls -a. .bashrc Documents .gconfd install.log .nautilus .. .cache Downloads .gnome2 install.log.syslog .netstat.swp 0001.pcap .config .elinks .gnome2_private .kde .opera anaconda-ks.cfg .cshrc .esd_auth .gtk-bookmarks .libreoffice Pictures .bash_history .dbus .fbcmd .gvfs .local .pki .bash_logout Desktop fbcmd_update.php .ICEauthority .mozilla Public .bash_profile .digrc .gconf index.html Music .pulse
4. Перечисление файлов с удобным отображением размера
С опцией -lh, ls показывает размеры в удобном формате.
# ls -lhtotal 176K-rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap-rw-------. 1 root root 1.6K Jul 31 02:17 anaconda-ks.cfgdrwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Desktopdrwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Documentsdrwxr-xr-x. 4 root root 4.0K Aug 16 02:55 Downloads-rw-r--r--. 1 root root 21K Aug 12 12:42 fbcmd_update.php-rw-r--r--. 1 root root 46K Jul 31 09:58 index.html-rw-r--r--. 1 root root 48K Jul 31 02:17 install.log-rw-r--r--. 1 root root 12K Jul 31 02:13 install.log.syslogdrwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Musicdrwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Picturesdrwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Publicdrwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Templatesdrwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Videos
5. Перечисление файлов и директорий с символом «/» в конце
Использование опции -F с командой ls добавит символ «/» в конце каждого каталога.
# ls -F0001.pcap Desktop/ Downloads/ index.html install.log.syslog Pictures/ anaconda-ks.cfg Documents/ fbcmd_update.php install.log Music/ Public/
6. Перечисление файлов в обратном порядке
Следующая команда ls с опцией -r выводит файлы и каталоги в обратном порядке.
# ls -rVideos Public Music install.log fbcmd_update.php Documents 0001.pcapTemplates Pictures install.log.syslog index.html Downloads Desktop
7. Рекурсивный список подкаталогов
ls с опцией -R выведет очень длинный список деревьев каталогов. Смотрите пример вывода команды.
# ls -Rtotal 1384-rw-------. 1 root root 33408 Aug 8 17:25 anaconda.log-rw-------. 1 root root 30508 Aug 8 17:25 anaconda.program.log./httpd:total 132-rw-r--r-- 1 root root 0 Aug 19 03:14 access_log-rw-r--r--. 1 root root 61916 Aug 10 17:55 access_log-20120812./lighttpd:total 68-rw-r--r-- 1 lighttpd lighttpd 7858 Aug 21 15:26 access.log-rw-r--r--. 1 lighttpd lighttpd 37531 Aug 17 18:21 access.log-20120819./nginx:total 12-rw-r--r--. 1 root root 0 Aug 12 03:17 access.log-rw-r--r--. 1 root root 390 Aug 12 03:17 access.log-20120812.gz
8. Обратный порядок вывода
С помощью комбинации -ltr список будет сортироваться по дате последнего изменения от старых к новым.
# ls -ltrtotal 176-rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslog-rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log-rw-------. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfgdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktopdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videosdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templatesdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Publicdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Picturesdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Musicdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documents-rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html-rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.phpdrwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloads-rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap
9. Сортировка файлов по размеру
При комбинации -lS перечисляет файлы и папки по размеру, начиная с большого.
# ls -lStotal 176-rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log-rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html-rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php-rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslogdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Desktopdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Documentsdrwxr-xr-x. 4 root root 4096 Aug 16 02:55 Downloadsdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Musicdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Picturesdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Publicdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Templatesdrwxr-xr-x. 2 root root 4096 Jul 31 02:48 Videos-rw-------. 1 root root 1586 Jul 31 02:17 anaconda-ks.cfg-rw-r--r--. 1 root root 683 Aug 19 09:59 0001.pcap
10. Отображение inode файла или каталога
Мы можем увидеть некоторое число перед именем файла/каталога. С опцией -i файл/каталог отображается с номером inode (индексный дескриптор).
# ls -i20112 0001.pcap 23610 Documents 23793 index.html 23611 Music23564 anaconda-ks.cfg 23595 Downloads 22 install.log 23612 Pictures23594 Desktop 23585 fbcmd_update.php 35 install.log.syslog 23601 Public
11. Версия утилиты ls
Проверка версии команды:
# ls --versionls (GNU coreutils) 8.4Copyright (C) 2010 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later .This is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.Written by Richard M. Stallman and David MacKenzie.
12. Страница помощи
Вывести справочную страницу команды ls с опциями.
# ls --helpUsage: ls [OPTION]... [FILE]...
13. Просмотр файлов в каталоге
С помощью команды ls -l выведите список файлов в каталоге /tmp. Команда с параметром -ld выводит информацию о каталоге /tmp.
# ls -l /tmptotal 408drwx------. 2 narad narad 4096 Aug 2 02:00 CRX_75DAF8CB7768-r--------. 1 root root 384683 Aug 4 12:28 htop-1.0.1.tar.gzdrwx------. 2 root root 4096 Aug 4 11:20 keyring-6Mfjnkdrwx------. 2 root root 4096 Aug 16 01:33 keyring-pioZJrdrwx------. 2 gdm gdm 4096 Aug 21 11:26 orbit-gdmdrwx------. 2 root root 4096 Aug 19 08:41 pulse-gl6o4ZdxQVrXdrwx------. 2 narad narad 4096 Aug 4 08:16 pulse-UDH76ExwUVoUdrwx------. 2 gdm gdm 4096 Aug 21 11:26 pulse-wJtcweUCtvhn-rw-------. 1 root root 300 Aug 16 03:34 yum_save_tx-2012-08-16-03-34LJTAa1.yumtx
# ls -ld /tmp/drwxrwxrwt. 13 root root 4096 Aug 21 12:48 /tmp/
14. Отображение UID и GID файлов
Для просмотра UID и GID файлов и каталогов используйте опцию -n с командой ls.
# ls -ntotal 36drwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Downloadsdrwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Musicdrwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Pictures-rw-rw-r--. 1 500 500 12 Aug 21 13:06 tmp.txtdrwxr-xr-x. 2 500 500 4096 Aug 2 01:52 Videos
15. Команда ls и ее alias
Мы создали псевдоним для команды ls, когда мы выполняем команду ls, она по умолчанию принимает опцию -l и отображает длинный список, как упоминалось ранее.
# alias ls="ls -l"
Примечание. Мы можем посмотреть уже созданные ранее псевдонимы, а также удалить alias, как показано на примере ниже.
# aliasalias cp='cp -i'alias l.='ls -d .* --color=auto'alias ll='ls -l --color=auto'alias ls='ls --color=auto'alias mv='mv -i'alias rm='rm -i'alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
Чтобы удалить ранее определенный псевдоним, просто используйте команду unalias.
# unalias ls