В.В.Галактионов, Т.М.Голоскокова, Н.И.Громова, А.В.Гусев, В.В.Мицын, Ж.Ж.Мусульманбеков, И.К.Некрасова, В.Д.Позе, А.В.Сергеев, Е.А.Тихоненко
РУКОВОДСТВО ДЛЯ ПОЛЬЗОВАТЕЛЕЙ LINUX КЛАСТЕРА ЛИТ ОИЯИ
Дубна 2004
От редактора
1 Структура Linux кластера и базовое программное обеспечение
1.1 Интерактивный кластер
1.2 Вычислительные фермы
1.3 Серверы дискового пространства
1.4 Вспомогательные серверы
1.5 Базовое программное обеспечение

2 Начальные рекомендации пользователям
2.1 Как стать пользователем
2.2 Ваша "учетная запись" (account) и пароль
2.3 Безопасность
2.4 Пакетная обработка счетных задач
2.5 Дисковое пространство для пользователей
2.6 AFS и пользовательские файлы и каталоги
2.7 Электронная почта
2.8 Русификация

3 Файловая система AFS

4 Рекомендации для пользователей параллельного вычислительного кластера
4.1 Использование команды qsub
4.2 Описание параметров
4.3 Контроль над исполнением задачи
4.4 Результаты выполнения задачи в пакетной обработке

5 Перечень и краткое описание основных команд при работе в операционной системе Linux
5.1 Простейшие действия
5.2 Стандартные команды. Информация по системе команд
5.3 Работа с сетью
5.4 Некоторые команды администрирования
5.5 Контроль процессов
5.6 Встроенные в Linux программные утилиты и языки

6 Midnight Commander

7 Рекомендуемые редакторы
7.1 Текстовый редактор pico
7.2 Краткое описание редактора vi/vim

8 Некоторые средства разработки программ
8.1 Текущие версии компиляторов C и g77
8.2 Редактор связей ld
8.3 Команды ar, ranlib, nm, ldd, strings
8.4 Утилита gprof
8.5 Отладчики GDB, DDD

9 Графические пакеты на Linux кластере
9.1 ImageMagick. Просмотр и обработка изображений
9.2 Chimera
9.3 Системы визуализации массивов числовой информации (научных данных)
Grace
IRIS Explorer
OpenDX (Data Explorer)

10 СУБД MySQL
10.1 Регистрация пользователей и создание базы данных
10.2 Соединение с сервером MySQL
10.3 Примеры работы с MySQL
10.4 Основные команды
10.5 Подключение к базе данных MySQL с использованием PHP

11 Изменения в работе с PHP-программами

12 Сведения об информационном сервере linux4u

13 Литература о Linux на русском языке

14 Сравнительное сопоставление прикладных пакетов в Windows и Linux

файлы для печати:
(.doc) (.zip))

November 18, 01:59:03

 

chapter_7

7 Рекомендуемые редакторы

7.1 Текстовый редактор pico


Простой редактор текста с небольшим набором команд и удобной системой подсказок. Все команды видны на экране при запуске редактора. Находится в каталоге /usr/bin. Является частью клиентской подсистемы почтовой программы pine.
Вызов:

pico [file_name]

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

Перемещение по тексту:

- с помощью клавиш со стрелками
- с помощью комбинаций клавиш

^ - принятое обозначение клавиши Ctrl в сочетании с другой клавишей. Можно эмулировать клавишу Ctrl двойным нажатием клавиши ESC.

^g - справочная информация. Комбинации клавиш для навигации по help-тексту указаны внизу страницы
^f - вперед на символ
^b - назад на символ
^p - на предыдущую строку
^n - на следующую строку
^a или Home - к началу текущей строки
^e или End - к концу текущей строки
^v или PageDown - к следующей странице текста
^y или PageUp - к предыдущей странице
^w - поиск фрагмента текста
^l - обновить дисплей
^ctrl - пометить начало выделяемого текста, блок
^k - вырезать выделенный текст в буфер (инверсия подсветки текста)
^u - вставка удаленного текста в позицию курсора.
^d - удалить символ после курсора
Backspase - удалить символ перед курсором
^t - проверка синтаксиса. Каждое нераспознанное слово приведет к выводу соответствующего запроса
^i или Tab - вставить табуляцию
^j - выравнивание текущего параграфа по правому полю (текст между пустыми строками или отступами)
^c - показать текущую позицию курсора
^r - вставить файл
^o - сохранить все выполненные изменения в файле
^x - exit, выход из редактора с сохранением изменений

7.2 Краткое описание редактора vi/vim

vi - экранная версия редактора ex. vim - Vi Improved - улучшенный вариант редактора vi
vim полностью эмулирует все команды редактора vi и имеет расширенный набор параметров при вызове и множество дополнительных возможностей. Для вызова редактора можно использовать оба имени. Возможные варианты вызова редактора:

vi [file_name]

vim [options][file_name]

vim [options] - - (с минусом) файл для редактирования читается с устройства стандартного ввода

vim -o file1 file2 - чтение во внутренние буферы двух файлов и одновременное открытие двух окон

ex - строчный командный режим

view [file_name] - просмотр файла в режиме read-only. Удобен для просмотра больших текстовых файлов, протоколов сообщений Linux, например.

Пути получения справочной информации о редакторе:

- в консоли: man vim
- список команд и их описание (в командном режиме):
:help
:help vim-modes
:help
:help index.txt
:help starting

Переход к описанию отдельного термина в help-тексте осуществляется его выделением с помощью курсора и нажатием клавиш Ctrl/] . Переход к первоначальному описанию - Ctrl/t.
Начальные установки работы редактора определяются двумя файлами: /usr/local/etc/.exrc и .exrc в домашнем каталоге, если он есть. Т.к. последним выполняется файл .exrc в корневом домашнем каталоге, то есть возможность самостоятельно отpедактиpовать его, изменив таким образом режим работы.
Например, в файл .exrc можно добавить команды:

set sm - (showmatch) показывает соответствующую открывающую скобку ( или { после ввода закрывающей.

set smd - (showmode) индикатор режима вставки или замены.

Перед началом использования редактора полезно посмотреть, с какими параметрами вызван редактор. Команда :set (в командном режиме) выводит все параметры, чьи значения отличаются от значений по умолчанию. Редактоp vim имеет более 300 команд!

Режимы работы редактора

Редактор имеет несколько основных режимов:

  • normal, командный. Ввод команд редактора. В этом режиме находится редактор сразу после старта.

  • Cmdline, режим ввода командной строки. Вход в этот режим из normal:
    : - двоеточие с командой
    / или ? - начало операции поиска
    :! - начало ввода Linux - команды

  • insert, режим ввода текста. Внизу экрана появляется надпись -- INSERT --
    Переход из режима normal (командный) в insert (ввода):

    i - набор текста перед текущим положением курсора
    a - набор текста после текущего положения курсора
    A - набор текста после конца текущей строки
    I - набор текста перед первым печатаемым символом текущей строки
    o - открыть для набора текста строку после текущей строки
    O - открыть для набора текста строку перед текущей строкой

    Можно набирать текст и нажатием клавиши Enter переходить к новой строке набора. Ввод текста возможен также и из файла ( знак "-" обязателен):
    cat file_name | vim -

    Для переключения в командный режим из режима ввода следует нажать Ctrl/[ (т.е. одновременно клавиши Ctrl и [ ) или нажать Esc (или дважды Esc). Переход в командный режим из режима ввода только для выполнения одной команды - Ctrl/o
  • visual - визуальный режим. После перехода в этот режим любое перемещение курсора выделяет текст. Далее работа продолжается с выделенным текстом
  • select - режим выбора, вариант визуального режима. Вводится нажатием клавиш Ctrl/g в визуальном режиме. Внизу экрана появляется надпись -- SELECT --


    Переход из командного режима в визуальный осуществляется вводом символов:


    v - операции над отмеченными символами
    V - операции над отмеченными строками
    Ctrl/V - операции над отмеченным блоком

    Повторный ввод символа отменяет визуальный режим.

  • insert command mode - ввод команд в режиме ввода, осуществляется нажатием клавиш Ctrl/o. Полезный дополнительный режим: редактор переходит из режима ввода в командный только для выполнения одной команды. После выполнения введенной команды редактор возвращается в режим ввода.
Двойное нажатие Esc из любого режима приводит в командный.

Командный режим

Ctrl/z - приостановить редактор (или запустить новую оболочку)
Ctrl/w - выбрать команды управления окнами
Перемещение курсора в командном режиме l или R или spacebar - переместиться на один символ вправо
h или или backspace - переместиться на один символ влево
k или - - перейти на одну строку вверх

(текущая колонка при этом останется прежней)
j или ? - перейти на одну строку вниз
(текущая колонка при этом останется прежней)
0 - перейти к первой колонке текущей строки
$ - перейти к последнему символу текущей строки
n| - перейти к колонке n текущей строки
^ - перейти к первому печатаемому символу текущей строки
- - подняться вверх на одну строку к первому печатаемому символу
+ или enter - опуститься вниз на одну линию к первому печатаемому символу

Позиционирование курсора на экране дисплея

H - перейти к первому печатаемому символу верхней строки экрана
M - перейти к первому печатаемому символу строки в середине экрана
L - перейти к первому печатаемому символу последней строки экрана

"Листание" файла по страницам, содержащим один экран Вашего терминала

CTRL/f - продвинуться на одну страницу вперед
CTRL/b - вернуться на одну страницу назад
CTRL/d - продвинуться вперед на 1/2 страницы
CTRL/u - вернуться на 1/2 страницы
CTRL/e - продвинуться на одну строку вперед
CTRL/y - вернуться на одну строку назад
z +enter - переместить текущую строку наверх экрана
z- - переместить текущую строку вниз экрана
z. - переместить текущую строку в центр экрана

Передвижение курсора по словам

Под словом в vi/vim понимается последовательность алфавитно-цифровых символов, разделенных не алфавитно-цифровыми символами или пробелами.
w - переместить курсор на одно слово вправо
W - переместить курсор на одно слово, разделенное пробелами, вправо
b - переместить курсор на одно слово влево
B - переместить курсор на одно слово, разделенное пробелами, влево
e - переместить курсор в конец текущего или следующего слова
E - переместить курсор в конец текущего или следующего слова, разделенного пробелами.

Включение нумерации строк

Для включения нумерации строк следует выполнить команду
:set nu

В качестве номера строки можно задавать не только номер в явном виде, но и символы:
$ - это последняя строка
. - это текущая строка
% - это сокращение для 1,$, т.е. от первой до последней строки

Перемещение по файлу

nG - перейти к строке n. Т.е., если набрать 1G, то Вы окажетесь в первой строке редактируемого файла. Если n не указано, то перейти к концу файла.

Поиск по фрагменту

/фрагмент enter - найти фрагмент в тексте файла, двигаясь к концу файла
?фрагмент enter - найти фрагмент в тексте файла, двигаясь к началу файла
n - повторить предыдущую / или ? команду n раз
N - повторить предыдущую / или ? команду, двигаясь в обратном направлении
:g/фрагмент/nu - поиск строк, содержащих фрагмент по всему тексту, найденные строки будут напечатаны на экране с указанием номера
:v/фрагмент/nu - поиск строк, не содержащих фрагмент, по всему тексту
Внесение изменений в редактируемый файл
r x - заменить текущий символ на символ x
R текст CTRL/[ - заменить несколько символов на текст
(т.е. Вы нажимаете R, затем набираете текст, на который хотите заменить последующие символы, после чего нажимаете одновременно CTRL и [)
cc текст CTRL/[ - заменить текущую строку на текст
C текст CTRL/[ - заменить символы от текущего до конца строки на текст
s текст CTRL/[ - вставить текст, начиная от текущего символа
S текст CTRL/[ - заменить текущую строку на текст

Удаление в тексте

dl или x - уничтожить текущий символ
X - уничтожить символ перед текущим
diw - удалить слово
dis - удалить фразу ( набор слов с признаком конца фразы . ? !)
dd - уничтожить текущую строку
D - уничтожить содержимое строки, начиная с текущего символа
:x,y d - уничтожить строки с номерами от x до y

Отмена и повтор изменений

. - повтор предыдущего изменения
u - отменить предыдущее изменение
U - восстановить первоначальный вид строки (даже если было сделано несколько изменений, но только если Вы не перемещали курсор из данной строки).

Получение информации о файле
CTRL/g - помещает в командной строке экрана информацию о положении курсора, имени, размере и статусе редактируемого файла.

Поиск по фрагменту с заменой

:x,y s/фрагмент1рагмент2/опции - замена в каждой строке диапазона строк от x до y каждого первого встретившегося в строке фрагмента1 на фрагмент2, где опции:
g - глобальная замена: заменить все встретившиеся фрагменты1 на фрагмент2
c - замена с проверкой (если замена нужна, Вы отвечайте "y").

Копирование и перемещение текста

YY или Y - запомнить текущую строку в буфере
p - поместить содержимое буфера или удаленные строки после текущей строки
P - поместить содержимое буфера или удаленные строки перед текущей строкой
J - соединить текущую и следующую строки в одну
:x,y t z - скопировать строки от x до y после строки с номером z
:x,y m z - переместить строки от x до y после строки z
:n r имя_файла - скопировать файл имя_файла в редактируемый файл после строки с номером n. Если номер не указан, то после текущей строки, а если в качестве номера указан 0, то - перед первой строкой файла
:x,y w имя_файла - записать строки от x до y в файл имя_файла

Bыход из редактора

ZZ - выход со спасением нового содержимого старого файла
ZQ - выход из редактора без всяких действий и условий
:x - выход со спасением нового содержимого файла
:wq - записать файл и выйти из vi/vim
:q! - выход без сохранения изменений
:e имя_файла - перейти (cо спасением отредактированного содержимого данного файла) к редактированию файла имя_файла

При сбое в работе редактора изменения в файл не заносятся, но сохраняется копия отредактированного текста в рабочих файлах.
vi -r имя_файла - восстановление файла по копии.
Сообщение о сбое и команде восстановления посылается по mail с просьбой не отвечать на это сообщение письмом.