12 марта 2010 г.

Команды для работы с файлами и каталогами

Шпаргалка по некоторым командам и их опциям для работы с файлами и директориями.
Команды: cd, cp, df, du, ln, ls, mkdir, mv, pwd, rm, rmdir
Операции: переход по файловой структуре, копирование, перемещение и переименование, создание ссылок, просмотр содержимого папки, удаление и пр.

Для подробной информации о команде и её использовании используется команда man: например, для вывода справки по самой команде man, следует набрать в консоли:

man man

Выход из режима чтения мануала - по клавише Q

Переход по файлам и каталогам - cd
cd <dir>  сменить текущий каталог (можно прописывать путь к каталогу абсолютный и относительный)
cd ..  перейти в директорию уровнем выше
cd ../..  перейти в директорию двумя уровнями выше
cd  перейти в домашнюю директорию
cd ~user  перейти в домашнюю директорию пользователя user
cd -  перейти в директорию, в которой находились до перехода в текущую директорию

pwd  показывает полный путь до текущего каталога

Просмотр содержимого каталога - ls
ls  содержимое текущего каталога
ls <dir>  содержимое указанного каталога
ls -l  подробная информация о содержимом каталога в виде таблички со столбцами: уровни доступа, количество жёстких ссылок, пользователь и группа владельцев, размер файла, время последнего изменения, имя файла или каталога
ls -a  содержимое включая скрытые файлы
ls -t  сортировка по времени (по убыванию)
ls -S  сортировка по размеру (по убыванию)
ls -r  обратный порядок сортировки
ls -R  содержимое каталога и его подкаталогов
ls | more - содержимое текущего каталога выводится постранично (используется, если файлов очень много; при этом перелистывание постанично осуществляется пробелом, а построчно клавишей Enter)

df  показывает информацию о свободном и используемом месте на дисках

du <file>  показывает, сколько места занимает на диске файл

-h  в обоих случаях используется для вывода информации в байтах, а не блоках

Создание каталогов - mkdir
mkdir <dir>  создать папку в текущем каталоге
mkdir <path_to_dir>  создать папку по указаннаму пути
mkdir -p <path_to_dir>  создавать все указанные в пути промежуточные каталоги, если они не существуют
mkdir -m задаёт режим доступа для нового каталога (немного другая тема)

rmdir  удаляет пустой каталог

Копирование - cp
cp <file1> <file2>  копировать файл1 в файл2 (если файл2 уже существует, то его содержимое будет затёрто)
cp <dir1> <dir2>  копировать папку1 в папку2
cp <dir1> <new_dir>  копировать файлы из папки1 в новую папку
cp dir/* .  копировать все файлы директории dir в текущую
cp -i ...  перед перезаписью существующего файла будет запрашиваться подтверждение
-p  сохраняет время модификации файла (без этой опции проставляется время копирования у новых файлов) и максимально возможные полномочия (иначе полномочия запустившего команду)
-r или -R  если копируется папка, то копируются и все входящие в него подкаталоги
-d  символические ссылки будут оставаться ссылками (иначе копируется файл, на который дана ссылка)
-f  перезаписывать файлы без дополнительных предупреждений
-b  создаёт резервную копию файла

Перемещение и переименование - mv
mv <file1> <newname>  переименовывает файл1 в файл с новым именем (не работает с масками, то есть для пакетного переименовывания использовать не получится)
в целом команда mv работает так же как команда копирование cp, только mv после копирования стирает исходные данные, соответственно синтаксис у команд одинаковый

Удаление - rm
rm *  удалит все файлы (но не папки) в текущем каталоге
rm -r <dir>  удаляет каталог с включёнными в него каталогами и файлами
-i  удаление с запросом для подтверждения
-f  удаление без лишних вопросов
-v  выводит на экран пояснения об идущем процессе

Создание ссылок - ln
ln  создаёт жёсткую ссылку на файл или каталог, которая имеет те же параметры, что и оригинальный файл - содержит путь к дисковому пространству, где расположены данные оригинального файла
ln -s создаёт символическую ссылку на файл - это аналог ярлыков в Windows - она просто содержит путь к оригинальному файлу
ln <file>  создаёт ссылку на файл с таким же именем и в той же директории
ln <source_file> <link_name>  создаёт ссылку с определённым именем на файл-источник, если ссылка с таким именем уже существует, то она перезаписывается
ln <file1> <file2> <dir>  создаёт одноимённые ссылки  на файлы в указанной директории
ln -l <file>  выводит список всех жёстких ссылок на файл

Комментариев нет:

Отправить комментарий