Библиотека сайта rus-linux.net
Секреты команды man
Автор: Shashank Sharma, September 07, 2007
Оригинал статьи: http://www.linux.com/feature/119031
Перевод: В.Костромин, 11.10.2007 г.
При копировании материала обязательны указание автора, переводчика и ссылки на оригинал статьи и настоящую страницу как первоисточник перевода!
Команда man, с помощью которой пользователи получают доступ к страницам справочного руководства по всем командам Linux, является наиболее часто используемой командой в любом дистрибутиве Linux. В настоящей заметке даются два небольших совета по использованию малоизвестных приемов работы с этой командой. С помощью этих приемов вы сможете сделать закладки при просмотре справки и запустить другую команду (например, ту, о которой вы читаете), не закрывая окно просмотра справки.
Прием #1: Закладки
Для отображения страниц справки используется утилита less. При просмотре очень больших man-страниц я часто забываю какие-то интересные подробности, если не сделаю каких-то заметок о них, прежде чем перейти к чтению следующих разделов man-страницы. Чтобы выйти из этой ситуации, можно сделать закладку в нужном месте справочного руководства.
При чтении man-страницы вы можете нажать клавишу m
и сразу вслед
за этим нажать какую-то другую буквенную клавишу, чтобы отметить текущую позицию
страницы. Чтобы затем вернуться в эту позицию с любого другого места, достаточно
нажать клавишу '
(одиночная кавычка), после чего нажать соответствующую
буквенную клавишу. Используя разные буквы можно таким образом помечать разные
места на одной man-странице. Хотя для создания закладок разрешается использовать
только клавиши с алфавитными символами, но зато можно использовать как строчные,
так и заглавные буквы (несмотря на то, что man-страница к утилите less
утверждает обратное). Например, вы можете пометить одну позицию с помощью
буквы w и совершенно другую позицию с помощью буквы W.
Созданные таким образом закладки запоминаются только на время текущей сессии, то есть если вы закроете man-страницу, все закладки будут потеряны. Кроме того, если вы случайно используете одну и ту же букву для того, чтобы отметить две разных позиции, сохранится только та закладка, которая была сделана последней.
Предположим, что вы переместились с позиции, помеченной буквой a,
к позиции, помеченной буквой q, перепрыгув при этом через 10 строк.
Следующий прыжок вы совершили на 30 строк, переместившись в позицию,
помеченную буквой t, после чего прыгнули еще на 5 строк в позицию,
помеченную буквой p. Если вы после этого наберете ''
(две
одиночных кавычки) вы переместитесь к той позиции, для перехода в которую вы совершили
прыжок на наибольшее число строк. То есть вы окажетесь в позиции t,
поскольку для того, чтобы оказаться там, вы переместились на самое большое число
строк, в данном примере - на 30 строк.
Поскольку команда man для отображения страниц справочного руководства использует утилиту less, вы можете применить прием с созданием закладок при просмотре с помощью less любых файлов, а не только man-страниц.
Прием #2: Тестирование команд, не покидая man-страницы
Другой полезный прием заключается в том, чтобы нажать !
в тот момент, когда вам захочется посмотреть, как работает та команда,
man-страницу к которой вы просматриваете. Это позволит вам выполнить команду,
не закрывая man-страницу и не открывая дополительного окна терминала.
После того, как вы протестировали команду, нажмите клавишу Enter и вы снова
окажетесь в том же месте man-страницы, где были.
Снова, этот прием работает по той причине, что команда man
использует утилиту less для отображения страниц справочного руководства.
Встроенные в less команды, как утверждается в man-странице к самой
утилите less, основаны на командах утилиты more и текстового
редактора vi. Прием с восклицательным знаком может быть использован
и при работе с редактором vi. Попробуйте сами: откройте
файл в vi, после чего нажмите : (двоеточие) и !, а затем наберите
команду ls -l
.
Прием с восклицательным знаком облегчает жизнь за счет сокращения числа нажатий клавиш или щелчков мыши для тестирования команд и последующего возврата к просмотру man-страницы.