Чтение онлайн

ЖАНРЫ

Cуперкомпьютеры: администрирование
Шрифт:

Команду

cat
можно использовать для создания файла:

cat > ls.txt
– все набранное на клавиатуре будет записано в файл
ls.txt
. Оборвать ввод можно сочетанием клавиш
Ctrl-D
.

Команда

cat
выдаёт все содержимое на экран. Если файл большой, то на экране можно будет увидеть только последние строки.

Для просмотра текстовых файлов порциями можно напрямую использовать команды:

more file.txt

less file.txt

Команда

less
содержит большой набор внутренних команд для перемещения
по файлу, поиска контекста и даже редактирования:

Таблица 10: некоторые клавиатурные команды less

tail [опции] файл —
просмотр конца файла. По умолчанию выдаётся 10 последних строк. С помощью опций можно начать просмотр с любой позиции.

Опции:

– n number
– сколько выдавать строк;

– r number
– отображение в обратном порядке;

– f
– непрерывная выдача файла по мере его заполнения.

Прерывание интерактивной выдачи комбинацией

Ctrl-С
.

grep [опции] строка [файл][файл]…
– поиск контекста «строка» в указанных файлах.

Опции:

– i
– поиск без учёта регистра;

– n
– отображать номера строк, содержащих контекст;

– v
– отображать строки, не содержащие контекста.

find [опции] каталог выражение
– рекурсивный поиск файлов в указанном каталоге по различным атрибутам, таким как имя, размер, время модификации, права доступа.

Выражения:

– name filename
 – поиск файла с именем
filename
. Возможно использование шаблонов, но тогда надо брать их в кавычки '
test*
' либо экранировать символы шаблона
test\*
;

– size [+|-]number
 – поиск файлов с заданным размером, превышающим его (+) или меньшим (-). Размер указывается в блоках по 512 байт;

– atime number
 – поиск файлов, к которым происходил доступ number суток назад;

– mtime number
 – поиск файлов, которые были модифицированы number суток назад;

– exec command \{\} \;
 – выполнить команду
command
над списком файлов, найденных командой
find
. Здесь выражение «
{}
» будет заменяться именем найденного файла, а ';' означает конец команды. Так как эти символы обрабатываются оболочкой, то их надо экранировать, например:

– рекурсивно удалить все core-файлы, начиная с текущего каталога.

Следует отметить, что многие действия из перечисленных выше и связанных с манипуляциями с каталогами и файлами можно выполнять с помощью специальной программы – файлового менеджера Midnight Commander. Он не требует графической оболочки, вызывается в терминальном окне командой:

С помощью этой программы можно перемещаться по дереву каталогов, просматривать содержимое каталогов и файлов, создавать каталоги (но не файлы), удалять, копировать, перемещать каталоги и файлы, вести поиск файлов. Для многих пользователей

текстовый редактор Midnight Commander является очень хорошим выбором. Его можно вызвать отдельно командой
mcedit
.

Редактирование файлов – отдельная важная тема. Существует большое число редакторов, работающих как в текстовом, так и в графическом режимах. Нас как администраторов в первую очередь будет интересовать редактор, который может работать в самых сложных условиях – без графического интерфейса, возможно, по сети, когда функциональные клавиши недоступны или работают неверно. Таких редакторов существует несколько, например

gnu nano
. Но, на наш взгляд, самый гарантированно работающий вариант, который, ко всему прочему установлен на 99% Linux-систем, – это редактор
vi
.

Его интерфейс на первый взгляд совсем не дружественен и не логичен, на деле же большинство его команд продуманы и удобны. Главное его преимущество – возможность работы практически в любых условиях и быстрое выполнение массовых операций (поиск, замена и т. п.). Он имеет два режима работы – командный и режим вставки. Изначально файл открывается в командном режиме. Для перемещения по тексту используйте клавиши курсора, если же они не работают, – клавиши '

h,j,k,l
' (посмотрите на клавиатуру и поймёте, почему такой странный набор). Клавиши
w
и
b
перемещают вперёд и назад на слово. И конечно, «главная» команда – выход с сохранением: '
:wq
' или просто '
ZZ
' (заглавными буквами). Выйти без сохранения можно командой '
:q!
'.

Полезные команды:

Таблица 11: некоторые клавиатурные команды vi

Режим вставки позволяет вписывать текст в нужную позицию. Выйти из него можно клавишей

<ESC>
. Перед любой командой можно набрать число, тогда команда будет повторена это число раз. Например, '
10dd
' удалит 10 строк (и поместит их вместе в буфер, потом можно будет их вставить в другом месте командой '
p
'). Повтор команды вставки или замены повторит и ввод, например ввод '
cwNEW_WORD<ESC>
' приведёт в замене слова после курсора на '
NEW_WORD
', а если потом переместить курсор на начало другого слова и нажать '.', то оно также будет заменено на '
NEW_WORD
'.

Из расширенных команд особенно удобна команда массовой замены '

s
'. Её синтаксис взят из команды
sed
. Перед командой можно указать через запятую диапазон строк, на которые она будет действовать, при этом '.' обозначает текущую строку,
$
– последнюю, а знак
+
указывает на то, что номер дан относительно текущей строки.

Например, заменить адрес old-cluster на new-supercomputer в 10 строках после текущей включительно можно, набрав:

< image l:href="#"/>

Очень непривычно, но очень эффективно. Обязательно почитайте учебник по

vi
и попробуйте использовать его для редактирования. Такие возможности, как быстрая замена слов и предложений, исправление переставленных местами букв, моментальная навигация, поддержка работы с файлами огромных объёмов делают его исключительно эффективным для редактирования файлов конфигурации, журналов и многих других.

Пакеты

Поделиться с друзьями: