Вход/Регистрация
UNIX — универсальная среда программирования
вернуться

Керниган Брайан Уилсон

Шрифт:

По умолчанию диапазон для

w
и
W
(команда
W
приведена ниже в табл. П.1.2) — это целый файл. Значение n по умолчанию для
r
равно
$,
что представляется не очень удачным. Будьте внимательны.

Редактор

ed
запоминает первое использованное имя файла из командной строки или из команд
r
,
w
. Команда
f
(файл) печатает или заменяет имя запомненного файла:

f
Печатать имя запомненного файла
f file
Установить запомненное имя на '
file
'

Команда

e
(редактировать) вновь вызывает ed с запомненным или новым файлом:

e
Начать редактировать запомненный файл
e file
Начать редактировать '
file
'

Команда

е
защищена тем же способом, что и
q
: если вы не записали измененную версию, первая команда
е
выдает сообщение об ошибке;
е
вновь инициализирует редактор независимо от внесения изменений. В некоторых системах
ed
связан с
е
, так что одна и та же команда (
е filename
) может использоваться внутри и вне редактора.

Шифрование

Файлы могут быть зашифрованы по записи и дешифрованы при чтении с помощью команды

x
; пароль будет запрошен. Шифрование происходит тем же способом, что и в
crypt(1)
. В некоторых системах команда
x
заменена на
X
(прописную букву) во избежание случайностей.

Сводка команд

В табл. П.1.2 перечислены команды редактора, а в табл. П.1.3 допустимые номера строк. Каждой команде предшествует нуль, один или два номера строк, указывающие число используемых строк, если их нет, принимается соглашение по умолчанию. За большинством команд может следовать буква p для вывода последней обработанной строки или 1 для формата списка. Текущей обычно становится последняя обработанная строка; настройка не меняется командами

f
,
k
,
w
,
x
,
=
,
!
.

.а
Выполнять ввод до тех пор, пока не напечатана строка, содержащая только '
.
'
.,.с
Заменить строки, новый текст заканчивается так же, как для команды
а
.,.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: Сводка команд

ed

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: Номера строк в

ed

Упражнение

Если вы думаете, что знаете

ed
, попробуйте выполнить текст (см. справочное руководство по
quiz(6)
).

Приложение 2

Справочное руководство по

hoc

Hoc — диалоговый язык для арифметики с плавающей точкой

Б. Керниган Р. Пайк
РЕЗЮМЕ

Hoc — это простой программируемый интерпретатор для выражений с плавающей точкой. Он обеспечивает поток управления в стиле Си, определения функций и обычные числовые встроенные функции, такие, как косинус и логарифм.

Выражения

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

=
присваивает значение своей правой части левому операнду и вырабатывает значение, используемое в многократном присваивании. Грамматика выражений имеет вид:

выражение : число

 | переменная

 | (выражение)

 | выражение бинарная_операция выражение

 | унарная_операция выражение

 | функция(аргументы)

Числа представляются с плавающей точкой. Формат ввода распознается с помощью

scanf(3)
: цифры, десятичная точка, цифры,
е
или
E
, показатель степени со знаком. Должна присутствовать по крайней мере одна цифра или десятичная точка; другие компоненты являются необязательными.

  • Читать дальше
  • 1
  • ...
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: