перейти в директорию, в которой находились до перехода в текущую директорию
pwd
показать текущюю директорию
ls
отобразить содержимое текущей директории
ls -F
отобразить содержимое текущей директории с добавлением к именам символов, храктеризующих тип
ls -l
показать детализированое представление файлов и директорий в текущей директории
ls -a
показать скрытые файлы и директории в текущей директории
ls *[0-9]*
показать файлы и директории содержащие в имени цифры
tree
показать дерево файлов и директорий, начиная от корня (/)
lstree
mkdir dir1
создать директорию с именем "dir1"
mkdir dir1 dir2
создать две директории одновременно
mkdir -p /tmp/dir1/dir2
создать дерево директорий
rm -f file1
удалить файл с именем "file1"
rmdir dir1
удалить директорию с именем "dir1"
rm -rf dir1
удалить директорию с именем "dir1" и рекурсивно всё её содержимое
rm -rf dir1 dir2
удалить две директории и рекурсивно их содержимое
mv dir1 new_dir
переименовать или переместить файл или директорию
cp file1 file2
сопировать файл file1 в файл file2
cp dir/* .
копировать все файлы директории dir в текущую директорию
cp -a /tmp/dir1 .
копировать директорию dir1 со всем содержимым в текущую директорию
cp -a dir1 dir2
копировать директорию dir1 в директорию dir2
ln -s file1 lnk1
создать символическую ссылку на файл или директорию
ln file1 lnk1
создать "жёсткую" (физическую) ссылку на файл или директорию
touch -t 0712250000 fileditest
модифицировать дату и время создания файла, при его отсутствии, создать файл с указанными датой и временем (YYMMDDhhmm)
Поиск файлов
find / -name file1
найти файлы и директории с именем file1. Поиск начать с корня (/)
find / -user user1
найти файл и директорию принадлежащие пользователю user1. Поиск начать с корня (/)
find /home/user1 -name "*.bin"
Найти все файлы и директории, имена которых оканчиваются на ". bin". Поиск начать с "/ home/user1"
find /usr/bin -type f -atime +100
найти все файлы в "/usr/bin", время последнего обращения к которым более 100 дней
find /usr/bin -type f -mtime -10
найти все файлы в "/usr/bin", созданные или изменённые в течении последних 10 дней
find / -name *.rpm -exec chmod 755 "{}" ;
найти все фалы и директории, имена которых оканчиваются на ".rpm", и изменить права доступа к ним
find / -xdev -name "*.rpm"
найти все фалы и директории, имена которых оканчиваются на ".rpm", игнорируя съёмные носители, такие как cdrom, floppy и т.п.
locate "*.ps"
найти все файлы, сожержащие в имени ".ps". Предварительно рекомендуется выполнить команду "updatedb"
whereis halt
показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к файлу "halt"
which halt
отображает полный путь к файлу "halt"
Монтирование файловых систем
mount /dev/hda2 /mnt/hda2
монтирует раздел "hda2" в точку монтирования "/mnt/hda2". Убедитесь в наличии директории-точки монтирования "/mnt/hda2"
umount /dev/hda2
размонтирует раздел "hda2". Перед выполнением, покиньте "/mnt/hda2"
fuser -km /mnt/hda2
принудительное размонтирование раздела. Применяется в случае, когда раздел занят каким-либо пользователем
umount -n /mnt/hda2
выполнить размонитрование без занесения информации в /etc/mtab. Полезно когда файл имеет атрибуты "только чтение" или недостаточно места на диске
mount /dev/fd0 /mnt/floppy
монтировать флоппи-диск
mount /dev/cdrom /mnt/cdrom
монтировать CD или DVD
mount /dev/hdc /mnt/cdrecorder
монтировать CD-R/CD-RW или DVD-R/DVD-RW(+-)
mount -o loop file.iso /mnt/cdrom
смонтировать ISO-образ
mount -t vfat /dev/hda5 /mnt/hda5
монтировать файловую систему Windows FAT32
mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share
монтировать сетевую файловую систему Windows (SMB/CIFS)
mount -o bind /home/user/prg /var/ftp/user
"монтирует" директорию в директорию (binding). Доступна с версии ядра 2.4.0. Полезна, например, для предоставления содержимого пользовательской директории через ftp при работе ftp-сервера в "песочнице" (chroot), когда симлинки сделать невозможно. Выполнение данной команды сделает копию содержимого /home/user/prg в /var/ftp/user
Дисковое пространство
df -h
отображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства (Прим.переводчика. ключ -h работает не во всех *nix системах)
ls -lSr |more
выдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера и позволяет осуществлять постраничный просмотр
du -sh dir1
подсчитывает и выводит размер, занимаемый директорией "dir1" (Прим.переводчика. ключ -h работает не во всех *nix системах)
du -sk * | sort -rn
отображает размер и имена файлов и директорий, с соритровкой по размеру
rpm -q -a --qf "%10{SIZE}t%{NAME}n" | sort -k1,1n
показывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру (fedora, redhat и т.п.)
показывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)
Описание ключей команды df
Ключ
Описание
-a или --all
Включить в вывод все (несуществующие) файловые системы
-B или --block-size=SIZE
Пересчитать единицы измерения перед выводом, например, -BM означает вывести информацию в мегабайтах
--total
Подсчитать общее
-h или --human-readable
Вывести информацию в удобном для восприятия виде (например: 1K 234M 2G)
-H или --si
Тоже самое, что и -h, но при пересчете используется множитель 1000, а не 1024
-i или --inodes
Вывести информацию об индексных дескрипторах (инодах), а не об использовании блоков
-k
Аналог --block-size=1K
-l или --local
Перечислить только локальные файловые системы
--no-sync
Не вызывать sync перед получением информации об использовании блоков (используется по-умолчанию)
-P или --portability
Выводить в формате POSIX
--sync
Вызывать sync перед получением информации об использовании блоков
-t или --type=ТИП
Перечислить только файловые системы указанного типа
-T или --print-type
Печатать тип файловой системы
-x или --exclude-type=ТИП
Исключить файловые системы указанного ТИПА
Ключи команды du
Ключ
Действие
-a, --all
Вывести размер для всех файлов, а не только папок
--apparent-size
Вывести действительные размеры, а не занимаемое на диске место; хотя действительный размер обычно меньше, иногда он может быть больше из-за дыр в файлах, внутренней фрагментации, косвенных блоков и тому подобного
-B, --block-size=РАЗМЕР
Выводить результаты в определенных единицах измерения. Например, -BM выводит размеры в единицах, равных 1,048,576 байтам, т.е. в мегабайтах
-b, --bytes
Эквивалентно --apparent-size --block-size=1
-c, --total
Выводить общий итог
-D, --dereference-args
Следовать только по символьным ссылкам, которые перечислены в командной строке
--files0-from=ФАЙЛ
Вывести отчёт об использовании диска, чьи имена файлов перечислены в файле ФАЙЛ
-H
Эквивалентен ключу --dereference-args (-D)
-h, --human-readable
Выводить размеры в удобном для человека виде (например, 1K 234M 2G)
--si
Как -h, но используется делитель 1000, а не 1024
-k
Синоним --block-size=1K
-l, --count-links
Суммировать размеры, если есть несколько жёстких ссылок на один объект
-m
Синоним --block-size=1M
-L, --dereference
Следовать по символьные ссылки
-P, --no-dereference
Не следовать по символьным ссылкам (по умолчанию)
-0, --null
Завершать каждую выводимую строку 0-м байтом, а не символом новой строки
-S, --separate-dirs
Не включать размер папок
-s, --summarize
Выводить размер только для папки, переданной в качестве аргумента
-x, --one-file-system
Оставатся в пределах одной файловой системы
-X, --exclude-from=ФАЙЛ
Исключать файлы, совпадающие с каким-либо образцом из ФАЙЛА
--exclude=ОБРАЗЕЦ
Исключать файлы, соответствующие ОБРАЗЦУ
-d, --max-depth=N
Глубина следования по субдиректориям
--time
Показывать время последней модификации всех файлов в каталоге или всех его подкаталогов
--help
Показать эту справку и выйти
--version
Показать информацию о версии программы du
Пользователи и группы
groupadd group_name
создать новую группу с именем group_name
groupdel group_name
удалить группу group_name
groupmod -n new_group_name old_group_name
переименовать группу old_group_name в new_group_name
создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell"а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognome
изменяет первичную группу текущего пользователя. Если указать "-", ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd
Выставление/изменение полномочий на файлы
ls -lh
просмотр полномочий на файлы и директории в текущей директории
ls /tmp | pr -T5 -W$COLUMNS
вывести содержимое директории /tmp и разделить вывод на пять колонок
chmod ugo+rwx directory1
добавить полномочия на директорию directory1 ugo(User Group Other)+rwx(Read Write eXecute) - всем полные права. Аналогичное можно сделать таким образом chmod 777 directory1
chmod go-rwx directory1
отобрать у группы и всех остальных все полномочия на директорию directory1.