Linux: Полное руководство
Шрифт:
КОМАНДНЫЙ РЕЖИМ.
Удаление (здесь и далее N — это число):
♦ N x N символов под курсором и справа от него;
♦ N X N символов слева от курсора;
♦ N dd N строк;
♦ D до конца текущей строки;
♦ N D до конца текущей строки и еще N-1 строку.
Копирование и вставка строк:
♦ N yy взять в буфер N строк от текущей и ниже;
♦ p вставить содержимое буфера после текущей строки;
♦ P вставить содержимое буфера перед текущей строкой.
Поиск
♦ N G перейти к строке с номером N;
♦ $ G перейти к последней строке файла;
♦ /<образец> искать образец вниз от курсора;
♦ ?<образец> искать образец вверх от курсора;
♦ n повторить поиск в том же направлении;
♦ N (буквально «N»): повторить поиск в обратном направлении.
Сохранение и выход:
♦ :w сохранить текущий файл;
♦ :w <имя> сохранить под новым именем, если файл <имя> еще не существует;
♦ :w! <имя> сохранить пол новым именем, переписав существующий файл;
♦ :q выйти;
♦ :q! принудительно выйти без сохранения;
♦ :wq сохранить и выйти.
Разное полезное:
♦ N u отменить последние N изменений;
♦ N Ctrl+r вернуть последние N отмененных изменений;
♦ U отменить изменения в последней строке;
♦ N r <символ> заменить N следующих символов на <символ>;
♦ N >> добавить отступ (Tab) в N следующих строк;
♦ N << удалить один отступ (Tab) из N следующих строк;
♦ :sh временно выйти в оболочку (вернуться — exit);
♦ :!<команда> выполнить команду оболочки.
Быстрый поиск имени программы можно выполнить прямо из командной строки: для этого введите первые буквы нужной вам команды и нажмите <Tab>. Если введенные вами буквы однозначно определяют команду или исполняемый файл, то ее имя появится в командной строке. Эта функция называется автозаполнением командной строки. Если не появилось ничего, нажмите <Tab> еще раз для вывода списка всех доступных команд, начинающихся со введенных букв. Если таких команд окажется больше сотни, у вас попросят подтверждения того, что вы действительно хотите увидеть их все.
В разных каталогах может оказаться несколько исполняемых файлов с одинаковыми именами. Какой из них будет исполнен? На этот вопрос отвечает команда which. Она просматривает каталоги, перечисленные в переменной окружения PATH, в поисках исполняемого файла с указанным именем, и выводит абсолютное имя первого встреченного из них.
Команда whereis ищет не только исполняемый файл, но и его справочные страницы и исходный код.
Команда locate ищет файл по образцу имени, опираясь на свою базу данных о файловой системе. Ее вариант с повышенной безопасностью slocate сохраняет данные о правах доступа к файлам, так что пользователь не увидит тех файлов, на которые у него нет прав. В дистрибутиве Fedora Core 3 команда locate представляет собой
Команда find ищет файл по его атрибутам в указанном каталоге и его подкаталогах на заданную глубину. Например, при установке операционной системы я отказался устанавливать файловый менеджер Midnight Commander, а теперь он мне понадобился. Для каждого из 4 компакт- дисков дистрибутива запускаю команду поиска по шаблону имени «mc*», то есть всех файлов, имена которых начинаются с mc:
В итоге на третьем диске найден пакет RPM. Об установке программного обеспечения из пакетов RPM будет сказано в главе 7.
Как многопользовательская операционная система, ОС Linux содержит механизм разграничения доступа к данным, позволяющий как защитить данные одного пользователя от нежелательного вмешательства других, так и разрешить другим доступ к этим данным для совместной работы.
Как уже сказано, любой ресурс компьютера под управлением ОС Linux представляется как файл, поэтому мы будем говорить только о правах доступа к файлу.
По отношению к файлу пользователь может входить в одну из трех категорий: владелец, член группы владельца, все остальные. Для каждой из этих категорий есть свой набор прав доступа.
Первым владельцем файла становится его создатель. Дальше файл можно передать другому владельцу или в другую группу командой
или
В некоторых реализациях Linux передать файл другому владельцу имеет право только суперпользователь, а в других — также его текущий владелец.
Набор прав доступа состоит из прав на чтение, запись и исполнение файла. В символьном представлении он выглядит как строка «rwx», где вместо любого символа может стоять дефис. Буква означает наличие права (r — чтение, w — запись, x — исполнение), дефис — его отсутствие.
Очевидно, что эти три бита могут быть записаны еще и как восьмеричное число. Так, права доступа r-x (чтение и исполнение без записи) понимаются как три двоичные цифры 101 или как восьмеричная цифра 5. Численное представление прав доступа называется абсолютным, или двоичной маской.
Полная строка прав доступа в символьном представлении устроена так:
В абсолютном представлении права владельца являются старшим разрядом восьмеричного числа, права группы — вторым и права остальных — третьим. Так, права rwxr-x--x выглядят как число 111 101 001, или 751.
Команда изменения прав доступа chmod понимает как абсолютное, так и символьное указание прав.
Назначим файлу