Текущий редактируемый текст называется буфером редактирования. Все редактирование осуществляется в буфере редактирования и не затрагивает файлов до подачи команды записи. При использовании vi экран терминала представляет собой окно в буфер редактирования. Изменения в буфере редактирования отображаются на экране, а курсор отмечает позицию в буфере редактирования.
Важнейшие ключи: [[ex]]
–c команда – указать команду, которая будет исполнена после загрузки в буфер первого файла; -r – восстановить состояние буфера после ошибочного завершения; -R – открыть файл только для чтения.
Важнейшие команды:
Переключение между режимами: командный режим – ; режим ввода – a (в режим вставки (вставка после курсора)), i (в режим вставки (с вставкой перед курсором)), A (в режим вставки (вставка после конца текущей строки)), I (в режим вставки (перед первым непробелом)), R (в режим замены); режим редактирования строки команды – :, /, ?, !.
Файловые команды: ZZ, :wq – сохранить текущий буфер в файл и завершить работу; Сохраняет файл и выходит из vi; :w – сохранить текущий буфер в файл; :wимя сохранить текущий буфер в файл с указанным именем; :q – выйти из редактора; :e имя – загрузить файл с указанным файлом в буфер редактирования; :n – загрузить следующий файл в списке файлов.
Команды перемещения: CTRL-d – на полстраницы вниз; CTRL-u – на полстраницы вверх; CTRL-f – на страницу вниз; CTRL-b – на страницу вверх; :0 – к началу файла; :n – к строке номер n; :$ – к концу файла ; 0 – к началу строки; ^ – к первому непробелу; $ – к концу строки; – к началу следующей строки; – – к началу предыдущей строки; j – на следующую строку; k – на предыдущую строку.
Команды редактирования: CTRL-h – удалить символ слева; CTRL-w – удалить слово слева; CTRL-v – ввести непечатаемый символ; x – удалить текущий символ; D – удалить до конца строки; dd – удалить текущую строку.
Команды поиска и замены: /текст – искать вперед образец текст; ?текст – искать назад образец текст; n – повторить последний поиск в том же направлении; N – повторить последний поиск в обратном направлении; :s/текст/новый_текст/ – заменить первый образец текст на новый_текст; :s/текст/новый_текст/g – заменить все образцы текст на новый_текст.
1.12 Перечень стандартных команд ОС
КомандаПримечания Определение
aliasМП Определить или вывести синонимы
arСР или РАСШ Создать или изменить библиотечные архивы
asaПФ Перевести символы управления кареткой
atМП Исполнить команды в указанное время
awk Сканировать и обработать файл в соответствии с инструкциями
basename Вывести часть полного имени файла, не относящуюся к имени каталога
batchМП Поставить команды в очередь на пакетное исполнение
bc Вычислить арифметическое выражение с заданной точностью
bgМП Запустить задачи в фоновом режиме
break Выйти из цикла for, while или until
c99РС Скомпилировать программу на стандартном Си
calРАСШ Вывести календарь
cat Объединить и вывести файлы
cd Изменить текущий каталог
cflowР РАСШ Построить блок-схему программы на Си
chgrp Изменить группу-хозяина файла
chmod Изменить атрибуты доступа к файлу
chown Изменить хозяина файла
cksum Вывести контрольные суммы и размеры файлов
cmp Сравнить два файла
colon (:) Ничего не делать
comm Выбрать или отбросить совпадающие строки в двух файлах
command Исполнить простую команду
compressРАСШ Сжать данные
continue Продолжить выполнение цикла for, while или until
cp Копировать файлы
crontabМП Поставить задачу в расписание периодического исполнения
csplitМП Разделить файлы на контекстной основе
ctagsР Ф МП Построить файл меток
cut Удалить указанные поля из каждой строки файла
cxrefР РАСШ Построить таблицу перекрестных ссылок программы на Си
date Вывести или установить дату и время
dd Преобразовать и скопировать файл
deltaР РАСШ Внести дельту (изменения) в файл SCCS
dfМП РАСШ Вывести количество свободного места на диске
diff Сравнить два файла
dirname Вывести часть полного имени файла, относящуюся к имени каталога
dot (.) Исполнить команду в текущем окружении
duМП Вывести информацию об использовании файлового пространства
echo Вывести аргументы
ed Редактировать текст
env Установить окружение для запуска команды
eval Составить команду из аргументов и исполнить ее
exМП Редактировать текст
exec Исполнить команду и открыть, закрыть или скопировать дескрипторы файлов
exit Завершить исполнение оболочки
expandМП Перевести табуляции в пробелы
export Сделать переменную экспортируемой
expr Вычислить аргумент как выражение
false Вернуть значение «ложно»
fc Обработать историю команд
fgМП Запустить задачи на переднем плане
fileМП Определить тип файлов
find Найти файлы
fold Свернуть строки
fort77Ф РФ Скомпилировать программу на Фортране
fuserРАСШ Вывести идентификаторы процессов, имеющих открытые файлы
gencatРАСШ Построить каталог форматированных сообщений
getР РАСШ Вывести версию файла SCCS
getconf Вывести значения конфигурации
getopts Разделить ключи утилиты
grep Искать в файле образец
hashРАСШ Запомнить или вывести путь к утилите
head Вывести начало файла
iconv Преобразовать код файла
id Вывести информацию о пользователе
ipcrmРАСШ Удалить очередь сообщений XSI, установки семафора или идентификатор разделяемой памяти
ipcsРАСШ Вывести состояние механизма межпроцессного обмена XSI
jobs МП Вывести состояние задач в текущем сеансе
join Объединить базы данных
kill Завершить процесс или передать ему сигнал
lexР РС Построить программу для лексического анализа
linkРАСШ Вызвать системную функцию link
ln Связать файлы
locale Вывести информацию о локали
localedef Определить переменные локали
logger Занести сообщения в журнал
logname Вывести регистрационное имя пользователя
lp Послать файлы в печать
ls Вывести содержимое каталога
m4Р РАСШ Обработать макросы
mailx Отправить сообщения
makeР СР Построить, обновить или перестроить группы программ
man Вывести системную документацию
mesgМП Разрешить или запретить вывод сообщений
mkdir Создать каталоги
mkfifo Создать специальные файлы очередей
moreМП Вывести файлы постранично
mv Переместить файлы
newgrpМП Перейти в другую группу
niceМП Запустить утилиту с указанным приоритетом
nlРАСШ Пронумеровать строки
nmР МП СР РАСШ Вывести список имен, содержащихся в объектном файле
nohup Запустить утилиту, не завершающуюся по сигналу HUP
od Вывести дамп файла в указанных форматах
paste Слить соответствующие или последующие строки файлов