UNIX — универсальная среда программирования
Шрифт:
По умолчанию принимается диапазон
Строки можно расщепить командой подстановки, отделив новую строку:
s/part1part2/part1\part2/ | Расщепить строку на две части |
s/ /\ /g | Расщепить по каждому пробелу. Оставить одно слово на строку |
Текущей становится последняя созданная строка.
Чтобы манипулировать не только целыми фрагментами, выбираемыми регулярными выражениями, но и их соответствующими частями, используйте помеченные регулярные выражения: если конструкция
s/\(...\)\(.*\)/\2\1/ | Поместить 3 первых символа в конец |
/\(..*\)\1/ | Найти
|
Командам
nr file | Читать file ; добавить его после строки n; текущей становится последняя прочитанная строка |
m,nw file | Писать строки m-n в file ; положение текущей строки не изменяется |
m,nw file | Добавить строки m-n к file ; положение текущей строки не изменяется |
По умолчанию диапазон для
Редактор
f | Печатать имя запомненного файла |
f file | Установить запомненное имя на ' file ' |
Команда
e | Начать редактировать запомненный файл |
e file | Начать редактировать ' file ' |
Команда
Файлы могут быть зашифрованы по записи и дешифрованы при чтении с помощью команды
В табл. П.1.2 перечислены команды редактора, а в табл. П.1.3 допустимые номера строк. Каждой команде предшествует нуль, один или два номера строк, указывающие число используемых строк, если их нет, принимается соглашение по умолчанию. За большинством команд может следовать буква p для вывода последней обработанной строки или 1 для формата списка. Текущей обычно становится последняя обработанная строка; настройка не меняется командами
.а | Выполнять ввод до тех пор, пока не напечатана строка, содержащая только ' . ' |
.,.с | Заменить строки, новый текст заканчивается так же, как для команды а |
.,.d | Исключить строки |
е file | Вновь начать редактировать file . Редактирование начинается даже в том случае, если исправления не записаны |
f file | Запомнить имя файла как file |
1,$g/re/cmds | Выполнить cmds для каждой строки, соответствующей регулярному выражению re; отдельные команды в cmds разделены \newline (\ +"перевод строки") |
.i | Вставить текст перед строкой; он заканчивается так же, как для команды a |
.,.+1j | .Соединить
|
.kc | Пометить строку буквой с |
...l | Перечислить строки, делая невидимые символы видимыми |
.,.m line | Переместить строки после строки line |
.,.p | Печатать строки |
q | Выйти. Q выходит, даже если исправления не записаны |
$r file | Читать file |
.,.s/re/new/ | Заменить new на то, что соответствует re |
.,.t line | Скопировать строки после line |
.u | Аннулировать последнюю подстановку в строке (только одну) |
1,$v/re/cmds | Выполнить команды ed cmds для каждой строки, не соответствующей re |
1,$w file | Записать строки в файл; W добавляет (строки к файлу) вместо того чтобы записывать (как новый файл) |
X | Войти в режим шифрования (или ed -х имя_файла) |
$= | Печатать номер строки |
! cmdline | Выполнить команду UNIX cmdline |
(.+1) newline | Печатать строку |
Таблица П.1.2: Сводка команд
n | Абсолютный номер строки n, n = 0,1, 2,... |
. | Текущая строка |
$ | Последняя строка текста |
/re/ | Следующая строка, соответствующая re ; после последней $ циклическое движение к первой строке |
?re? | Предыдущая строка, соответствующая re; после первой циклическое движение к последней $ |
'c | Строка с меткой с |
N1+/-n | Строка N1+/-n (аддитивная комбинация) |
N1,N2 | Строки с N1 по N2 |
N1;N2 | Команда: сделать строку N1 текущей, затем вычислить N2. N1 и N2 могут быть определены любым из перечисленных выше способов |
Таблица П.1.3: Номера строк в
Если вы думаете, что знаете
Приложение 2
Справочное руководство по
Hoc — диалоговый язык для арифметики с плавающей точкой
Hoc — это простой программируемый интерпретатор для выражений с плавающей точкой. Он обеспечивает поток управления в стиле Си, определения функций и обычные числовые встроенные функции, такие, как косинус и логарифм.
Hoc представляет язык выражений, во многом подобный Си: хотя он и содержит несколько управляющих операторов, большинство операторов, например присваивания, суть выражения, значения которых не принимаются во внимание. Так, оператор присваивания
Числа представляются с плавающей точкой. Формат ввода распознается с помощью