Первая команда, с которой сталкиваются новички
Команда вывода "списка" файлов. Многие недооценивают всю мощь этой скромной команды. Например, с ключом -R, рекурсивный обход дерева каталогов, командв ls выводит содержимое каталогов в виде древовидной структуры. Вот еще ряд любопытных ключей (опций) команды ls: -S — сортировка по размеру файлов, -t — сортировка по времени последней модификации файла и -i — выводит список файлов с их inode (см. Пример 12-4).
Пример 12-1. Создание оглавления диска для записи CDR, с помощью команды ls
cat — это акроним от concatenate, выводит содержимое списка файлов на stdout. Для объединения файлов в один файл может использоваться в комбинации с операциями перенаправления (> или >>).
см. также Пример 12-24 and Пример 12-20.
tac — выводит содержимое файлов в обратном порядке, от последней строки к первой.
выводит все строки файла задом наперед на stdout. Это не то же самое, что tac. Команда rev сохраняет порядок следования строк, но переворачивает каждую строку задом наперед.
Команда копирования файлов. cp file1 file2 скопирует file1 в file2, перезаписав file2 если он уже существовал (см. Пример 12-6).
![]() |
С флагами -a и -r, или -R выполняет копирование дерева каталогов. |
Команда перемещения файла. Эквивалентна комбинации команд cp и rm. Может использоваться для перемещения большого количества файлов или для переименования каталогов. Примеры использования команды mv вы найдете в Пример 9-17 и Пример A-3.
![]() |
При использовании в неинтерактивных сценариях, команде mv следует передавать ключ -f, чтобы подавить запрос подтверждения на перемещение. Если в качестве каталога назначения указан существующий каталог, то перемещаемый каталог становится подкаталогом каталога назначения..
|
Удаляет (remove) файл(ы). Ключ -f позволяет удалять даже файлы ТОЛЬКО-ДЛЯ-ЧТЕНИЯ и подавляет запрос подтверждения на удаление.
![]() |
При попытке удаления файлов, чьи имена начинаются с символа "-" (дефис), команда rm будет давать сообщение об ошибке.
Как вариант можно предложить предварять имена таких файлов точкой-со-слэшем — "./" (путь к файлу в текущем каталоге, прим. перев.) .
|
![]() |
С ключом -r, удалит все файлы в подкаталогах, начиная с текущего. |
Удаляет каталог. Удаляемый каталог не должен содержать файлов, включая "скрытые файлы", [28] иначе каталог не будет удален.
Создает новый каталог, например: mkdir -p project/programs/December создает каталог с заданным именем в требуемом каталоге. Ключ -p позволяет создавать промежуточные родительские каталоги.
Изменяет атрибуты существующего файла (см. Пример 11-11).
Изменяет атрибуты файла. Эта команда подобна команде chmod, за исключением синтаксиса вызова, и работает исключительно в файловой системе ext2.
Создает ссылку на существующий файл. Позволяет задавать несколько имен одному и тому же файлу и представляет из себя превосходную альтернативу "псевдонимам" (алиасам) (см. Пример 4-6).
Размер файла-ссылки, создаваемого командой ln, имеет длину всего в несколько байт.
Чаще всего команда ln используется с ключом -s, который служит для создания символической (symbolic), или "мягкой" ("soft") ссылки. Без этого флага, команда создает полноценную копию имени файла. С ключом — только ссылку, указывающую на заданный файл. Дополнительное преимущество ключа -s состоит в том, что он позволяет создавать ссылки на файлы, расположенные в других файловых системах.
Синтаксис команды достаточно прост. Например, команда: ln -s oldfile newfile создаст ссылку, с именем newfile, на существующий файл oldfile,
![]() |
Если файл с именем newfile уже существует, то он будет удален командой ln. |
Ссылки дают возможность запускать одну и ту же программу или сценарий, использую различные имена. В этом случае программист может предусмотреть свой вариант развития событий для каждого из имен.
Пример 12-2. Здравствуй или Прощай
Команды доступа к справочным и информационным страницам по системным командам и установленным программам и утилитам. Как правило, страницы info содержат более подробную информацию, чем man.
[28] Скрытыми считаются файлы, имена которых начинаются с точки, например, ~/.Xdefaults. Такие файлы не выводятся простой командой ls, и не могут быть удалены командой rm -rf *. Как правило, скрытыми делаются конфигурационные файлы в домашнем каталоге пользователя.
Последние комментарии