♦ -f: не запрашивать подтверждения, не выводить сообщений об ошибках. Если указаны оба ключа -iи -f, то срабатывает последний указанный;
♦ -r: рекурсивное удаление каталога со всеми его подкаталогами. Непустой каталог можно удалить только так.
Копирование и перемещение файла
Файл копируется командой cp. Формат этой команды:
cp [ключи] <���исходный_файл> {<���файл_назначения> | <���каталог_назначения>}
Полезные ключи команды cp:
♦ -i: требовать подтверждения перед перезаписью существующего файла;
♦ -f: не требовать подтверждения;
♦ -r: рекурсивно копировать каталог со всеми подкаталогами;
♦ -а: сохранять атрибуты файла;
♦ -d: копировать символические ссылки вместо файлов, на которые они указывают;
♦ -s: создавать символические ссылки вместо копирования (-l — жесткие);
♦ -u: не переписывать существующий файл, если он модифицирован позже;
♦ -х: игнорировать подкаталоги, расположенные в других файловых системах.
Кстати, команда catс перенаправленным выводом тоже может скопировать файл:
$ cat hello.world > copy.of.hello.world
Команда mvперемещает или переименовывает файлы. Формат команды:
mv [ключи] <���исходный_файл> {<���файл_назначения> | <���каталог_назначения>}
Ключи -i, -f имеют тот же смысл, что для команд cp и rm.
Просмотр текстовых файлов
Перед тем, как просматривать файл, неплохо было бы убедиться, что он действительно является текстовым, то есть содержит только печатные ASCII-символы. Для проверки типа файла служит команда
file <���имя_файла>
Если ее ответ содержит слово «text», то файл можно безопасно вывести на терминал. Вывод двоичного файла может сбить кодировку так, что вместо набираемых на клавиатуре символов вы увидите черт знает что. Если это все же случилось, введите вслепую команду
$ tput reset
(или, если вы работаете в графическом режиме в окне виртуального терминала, выберите в его меню команду Терминал|Сброс и очисткадля среды GNOME или Edit|Reset & Clear Terminalдля среды KDE).
Кроме уже упомянутой команды cat, для вывода файла на терминал служат команда
more <���имя_файла>
и ее улучшенный вариант less.
Команда-фильтр moreразбивает поток своего вывода на порции размером в экран и ожидает ввода пользователя для отображения следующей порции. Чтобы увидеть следующую строку, нажмите <���Ввод>; чтобы увидеть следующий экран, нажмите <���пробел>; чтобы прервать работу команды, нажмите или Ctrl+C.
Утилита less позволяет листать выводимый файл не только вперед, но и назад (клавишами PgDn и PgUp), перемещаться к указанному месту в файле, искать по образцу и дает еще много полезных возможностей. В общем, man less.
Если интересующая вас информация находится в конце файла (например, вы хотите просмотреть журнал системных сообщений messages
в каталоге /var/log
, чтобы узнать, что именно только что пошло наперекосяк), то вам поможет команда
tail [-N] [имя_файла]
где N — число выводимых строк файла, считая от последней. Командой
head [-N] [имя_файла]
можно просмотреть, наоборот, только первые N его строк. Значение N по умолчанию равно 10.
Если вы хотите просмотреть не весь файл, а только те его строки, которые содержат заданный фрагмент текста, используйте команду-фильтр grep. Например, я хочу сменить клавишу переключения раскладки клавиатуры в графическом режиме. Я знаю, что строки конфигурационного файла /etc/X11/xorg.conf
, имеющие отношение к клавиатуре, содержат фрагмент XKB… а может, Xkb или xkb? Неважно:
$ grep -in xkb /etc/X11/xorg.conf
[...]
65: Option "XkbLayout" "us,ru"
66: Option "XkbOptions" "grp:shift_toggle,grp_led:scroll"
Я указал ключи: -i, требующий игнорировать различия регистра в образце для поиска и файле, и -n, требующий выводить номера строк, в которых встречается образен xkb.
Для всех команд ключи без аргументов можно соединять: запись -in эквивалентна записи -i -n.
Редактирование текстовых файлов
Вышеприведенный пример показывает, что переключением раскладки клавиатуры в графическом режиме управляет комбинация клавиш Shift + Shift. Неудобно: в консольном режиме я привык к Ctrl+Shift. Надо заменить значение shift_toggle на ctrl_shift_toggle. Такие мелкие правки конфигурационных файлов — обычное дело для администратора, поэтому средство их внесения присутствовало в UNIX-системах всегда. Это консольный редактор vi, входящий в каждый дистрибутив Linux (в дистрибутив Fedora Core 3 включен его улучшенный вариант vim, но команда viтоже доступна: она стала псевдонимом для команды vim).
Читать дальше
Конец ознакомительного отрывка
Купить книгу