Linux для начинающих - Командная строка - Команды для работы с файлами

 

 

 

Даже если вы работаете в графической оболочке, то все равно вам надо уметь работать в текстовой консоли, так как работа в режиме командой строки является основной в Linux. При работе в Linux всегда полезно знать наиболее популярные команды, которые позволяют восстановить работоспособность системы, например, в случае краха графической подсистемы X Window. А ряд команд полезен даже при нормальной работе, так как позволяет быстро выполнить действия, не вызывая дополнительные программы с графическим интерфейсом.

Команды для подсчета размеров файлов

Первая команда, которая заинтересует любого пользователя, — это df, с помощью которой можно узнать количество свободного места на устройстве (например, на разделе винчестера, куда была установлена операционная система Linux). К тому же эта информация обладает первостепенной важностью для пользователя, который столкнулся с проблемами при установке (например, был указан слишком малый объем какого-то раздела или было выбрано слишком много пакетов).
df [-t тип] [путь]
Если имя устройства не указано, то выводится информация о свободном месте на каждой смонтированной файловой системе. Например, если был создан один общий раздел для всей операционной системы, то команда выведет следующую информацию:
df
Filesystem 1024-blocks Used Available Capacity
Mounted /dev/hda5 225 420 203 346 10 434 152 /
Свободное место подсчитывается обычно в блоках по 1024 байт, но можно указать и 512.
В приведенном примере раздел /dev/hda5 занимает 225 Мбайт. На нем занято 203 Мбайт, а свободного места осталось всего 10 Мбайт. Если сложить два последних числа, то окажется, что сумма меньше, чем размер раздела. Причина такого различия в том, что файловая система резервирует место для системного администратора (примерно 5 % для ext2), то есть он может сохранить дополнительные данные даже в том случае, когда остальные пользователи будут получать сообщение об отсутствии свободного места. Для подсчета занятого файлами места служит команда du: du [параметры] [файлы] [каталоги]
Например, для подсчета объема конкретного каталога можно использовать следующий вариант команды du:
du -s /usr 169 209K /usr

Список файлов

Для того чтобы вывести на монитор список файлов и подкаталогов в текущем каталоге (в самом начале работы вы находитесь в своем домашнем каталоге), надо ввести команду:
Is
По команде Is (сокр. от to list — «составлять список») выводится список файлов, которые находятся в текущем каталоге, а также подкаталоги. Команда может использоваться со множеством параметров, которые определяют формат вывода списка, например:
Is -F
С таким параметром команда Is помечает в выводимом списке исполняемые файлы звездочкой «*», каталоги наклонной чертой «/», а символьные ссылки — значком «@».
Кроме команды Is, существует аналогичная команда dir (она используется с чуть меньшим количеством параметров), которую пользователи MS DOS хорошо знают:
dir список_файлов
Вы также можете использовать символ «*»для вывода файлов с использованием маски:

Для вывода списка всех файлов и подкаталогов, включая скрытые файлы, используется следующий вариант команды:
Is -a

Переименование файлов

Для переименования файлов используется команда:
mv старое_название новое_название
Команда mv (сокр. от to move — «перемещать») работает аналогично команде rename из DOS. Например, нам надо переименовать файл test в user:
Is
список_файлов mv test user
Is список_файлов
Заметьте, что команда mv обрамляется командами вывода списка файлов — Is, так как при переименовании файлов обязательно надо сначала проверить существование исходного файла, чтобы не было ошибки при выполнении команды. Также необходимо проверить отсутствие файла с названием, которое вы собираетесь дать своему переименованному файлу. Эта операция обязательна, потому что команда mv будет выполнена, несмотря на присутствие одноименного файла, который будет безвозвратно удален в процессе выполнения команды.

Удаление файлов

Для удаления файлов используется команда
rm удаляемый_файл
Пользоваться командой rm (сокр. от to remove — «убирать») следует очень осторожно, так как в ряде случаев может не последовать вопроса системы о подтверждении пользователем согласия на удаление файла. В случае запроса о подтверждении удаления файла вам надо ответить Y (Yes):
rm test2
rm: remove 'test2'?
Для получения запроса на удаление файла используют команду rm с параметром
rm -i test2

Создание файла

Для создания короткого текстового файла можно воспользоваться командой echo, которая выводит текст или значения переменных на стандартный вывод (по умолчанию — монитор):
echo "Вывод текста на экран"
Если использовать перенаправление вывода, применив символ >, то набранный текст будет записан в новый файл:
echo > test "Текст записывается в файл test"
В том случае, когда файл с таким именем уже существует, он будет перезаписан, а вся старая информация потеряется. Для добавления информации в конец файла можно использовать символ >>:
echo » test "Этот текст добавляется в файл test"
Вывод текста можно перенаправить для печати на принтере, используя символ |:
echo "Этот текст отправляется на принтер" | lр
В текстовой строке применяются следующие управляющие символы:

ПРИМЕЧАНИЕ
Linux позволяет направлять результаты работы команды (программы) на вход другой команды (программы), используя функции стандартного ввода-вывода. Таким образом можно в одной командной строке объединить любое количество команд, используя четыре символа перенаправления ввода-вывода:
Символ > для перенаправления стандартного вывода. Символ < для перенаправления стандартного ввода.
Символ >> для добавления стандартного вывода в конец существующего файла.
Символ | (символ потока) для передачи стандартного вывода одной команды на стандартный вход другой.

Вывод и копирование файла

Чтобы вывести информацию из существующего файла, можно воспользоваться командой cat:
cat test
Эта команда является одной из самых полезных в Linux, так как с ее помощью можно не только просматривать содержимое файлов, но и проводить различные операции с ними. Например, можно создать короткий текстовый файл, введя его содержимое с клавиатуры:
cat > test1
Чтобы окончить ввод текста, надо нажать комбинацию клавиш Ctrl+D.
Соединить два файла вместе, добавив еще раз содержимое файла test в файл test1, позволяет следующая команда:
cat test1 >> test
Теперь можно вывести информацию из обоих файлов на монитор одной командой:
cat test test1

Просмотр содержимого файла

Для постраничного вывода файла на экран предназначена команда:
more параметры файлы
Правда, большинство пользователей применяет более удобную команду, которая позволяет просматривать содержимое файла не только от начала к концу, но и в обратном направлении:
less параметры файлы
Команда less сочетает в себе лучшие стороны команды cat и текстовых редакторов. Кроме того, при использовании команды less из просматриваемого файла читаются только те байты, которые выводятся на экран, без загрузки в оперативную память всего файла.

Каталоги

Для создания каталогов пользуются командой mkdir (сокр. от make directory — создать каталог):
mkdir proba
Создав каталог, обратите внимание на то, что в Linux невозможно различить файлы и каталоги по имени. Например, проверим, что мы создали в своем рабочем каталоге:
Is
test test1 proba

Как видите, имена файлов и каталога ничем не отличаются. Для выделения каталогов воспользуемся командой Is с дополнительным параметром:
Is -F
test test1 proba/
Переименовывают каталог с помощью команды mv, которая ранее
уже обсуждалась:
mv proba dir1
Is -F
test testl dir1/
Для перехода в другой каталог используют команду cd:
cd dir1
Для возврата на предыдущий уровень файловой системы в команде cd указывают «..»:
cd ..
Можно вернуться в исходную точку сразу, «перескочив» через несколько вышележащих каталогов:
cd ../..
Чтобы перейти в корневой каталог, не используя многократно команду cd, пользуются следующим вариантом:
cd /
Чтобы из корневого каталога перейти в рабочий (домашний) каталог, надо последовательно указать в команде cd все имена подкаталогов, но можно использовать эту команду без параметров:
cd или
cd -
Кроме того, можно узнать, в каком каталоге вы находитесь, с помощью команды
pwd Удаляют ненужный каталог с помощью команды rmdir:
rmdir dir1
Is
test test1
Если вы хотите удалить каталог, в котором имеются файлы, то сначала надо удалить файлы с помощью команды rm, а затем удалить сам каталог.


Hosted by uCoz