ex (Unix)


ex (сокращение от англ. EXtended («расширенный»),[1][2] — это строковый редактор для систем Unix, первоначально написанный Биллом Джоем[3] в 1976 году, начиная с более ранней программы, написанной Чарльзом Хейли.[4] Существует несколько реализаций программы; они стандартизированы POSIX.[5]

Оригинальным Unix-редактор, распространявшимся с Research Unix в 1970-х годах, был довольно неудобный для пользователя ed. Джордж Кулурис из Лондонского Колледжа королевы Марии, в котором в 1973 году был установлен, в 1975 году разработал улучшенную версию под названием «em», которая могла использовать преимущества видеотерминалов.[6] Во время посещения Университета Беркли, Кулурис показал свою программу Биллу Джою, который модифицировал ее для снижения требований к процессору; версия Джоя стала называться «ex»[7] и была включена в BSD.

ex в, конечном итоге, получил полноэкранный визуальный интерфейс (включая новые командные операции), тем самым став текстовым редактором vi. В последнее время, ex реализуется как личность программы vi; большинство вариантов по-прежнему имеют «режим ex», который вызывается с помощью команды ex, или из vi вводом символа : (двоеточие). Хотя функциональные возможности ex и vi частично совпадают, некоторые действия можно выполнять только с помощью команд ex, поэтому они остаются полезными при использовании vi.

Основные команды ex, относящиеся к поиску и замене, необходимы для vi. Например, команда ex :%s/XXX/YYY/g заменяет каждое вхождение XXX на YYY, и работает также в. Параметр % означает каждую строку в файле. Параметр 'g' означает глобальный и означает замену каждого вхождения в каждой строке (если он не указан, то будет заменено только первое вхождение в каждой строке).