runawk

Скриншот программы:
runawk
Детали программы:
Версия: 1.5.0
Дата загрузки: 19 Feb 15
Разработчик: Aleksey Cheusov
Тип распространения: Бесплатная
Популярность: 20

Rating: nan/5 (Total Votes: 0)

runawk является крошечный обертка для AWK переводчика, что impements модульную систему и помогает писать отдельные программы AWK.
Мотивация
После нескольких лет использования AWK для программирования я обнаружил, что, несмотря на
его простота и ограничения AWK достаточно хорош для сценариев широкий
спектр различных задач. AWK не так poweful как их больше
коллеги, как Perl, Ruby, TCL и другие, но она имеет свои собственные
преимущества, такие как компактность, простота и доступность практически для всех
UNIX-подобных систем. Я лично хотел свои данные на инициативе и
Маркер ориентации, очень полезная техника для простой обработки текста
коммунальные услуги.
Но! К сожалению затрагивают только переводчики не хватает некоторых важных особенностей и
иногда работают не так хорошо, как это подсчитает быть.
Некоторые проблемы я вижу (некоторые из них, конечно).
1) AWK отсутствует поддержка модулей. Даже если я создаю небольшие программы, я
часто хотят, чтобы использовать функции, созданные ранее и уже используется в
другие сценарии. То есть, это подсчитает здорово orginise функции в
так называемый библиотек (модулей).
2) Для того, чтобы передать аргументы #! / USR / бен / AWK -f скрипт (не AWK
переводчика), необходимо prepand список
споры с - (два минус зодиака). На мой взгляд, это выглядит плохо.
Пример:
awk_program:
И NBSP; & NBSP; & NBSP; #! / USR / бен / AWK -f
И NBSP; & NBSP; & NBSP; НАЧАТЬ {
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; для (я = 1; я И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; Printf "ARGV [% d] =% S", я, ARGV [я]
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; }
И NBSP; & NBSP; & NBSP; }
Shell сессия:
И NBSP; & NBSP; & NBSP; % Awk_program --opt1 --opt2
И NBSP; & NBSP; & NBSP; / USR / бен / AWK: неизвестно вариант --opt1 игнорируются
И NBSP; & NBSP; & NBSP; / USR / бен / AWK: неизвестно вариант --opt2 игнорируются
И NBSP; & NBSP; & NBSP; % Awk_program - --opt1 --opt2
И NBSP; & NBSP; & NBSP; ARGV [1] = - opt1
И NBSP; & NBSP; & NBSP; ARGV [2] = - OPT2
И NBSP; & NBSP; & NBSP; %
По моему мнению, awk_program скрипт должен работать, как это (так же, как
нормальные программы DO)
И NBSP; & NBSP; & NBSP; % Awk_program --opt1 --opt2
И NBSP; & NBSP; & NBSP; ARGV [1] = - opt1
И NBSP; & NBSP; & NBSP; ARGV [2] = - OPT2
И NBSP; & NBSP; & NBSP; %
Это возможно с помощью runawk.
3) При #! / USR / бен / AWK -f скрипт обрабатывает аргументы (параметры) и хочет
читать из стандартного ввода, необходимо добавить
/ DEV / стандартного ввода (или `- ') в качестве последнего аргумента явно.
Пример:
awk_program:
И NBSP; & NBSP; & NBSP; #! / USR / бен / AWK -f
И NBSP; & NBSP; & NBSP; НАЧАТЬ {
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; если (ARGV [1] == "--flag") {
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; флаг = 1
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; ARGV [1] = "" # не читать файл с именем "--flag"
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; }
И NBSP; & NBSP; & NBSP; }
И NBSP; & NBSP; & NBSP; {
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; печать "флаг =" флаг "$ 0 =" $ 0
И NBSP; & NBSP; & NBSP; }
Shell сессия:
И NBSP; & NBSP; & NBSP; % Эхо тест | awk_program - --flag
И NBSP; & NBSP; & NBSP; % Эхо тест | awk_program - --flag / DEV / стандартного ввода
И NBSP; & NBSP; & NBSP; флаг = 1 $ 0 = тест
И NBSP; & NBSP; & NBSP; %
В идеале awk_program должны работать, как это
И NBSP; & NBSP; & NBSP; Тест% эхо | awk_program --flag
И NBSP; & NBSP; & NBSP; флаг = 1 $ 0 = тест
И NBSP; & NBSP; & NBSP; %
Все эти probles решаются runawk, и именно поэтому я написал это.
Я также включают в себя несколько модулей для runawk распределение которые являются
полезно для меня, и я надеюсь, будет полезно для вас тоже.
Установка
0) BSD марка не требуется. Я называю это просто "сделать", но его настоящее имя может
И NBSP; & NBSP; меняться и NBSP.; BУбедитесь, и pmake являются возможные имена.
И NBSP; & NBSP; Если вам нужно изменить параметры строительные умолчанию,
И NBSP; & NBSP; запустить сделать так
И NBSP; & NBSP; & NBSP; & NBSP; ENV [YOUR_ASSIGNMENTS] сделать <цель>
И NBSP; & NBSP; Смотрите пример ниже раздел
1) Распакуйте архив вы скачали, как это
И NBSP; & NBSP; GZIP -dc runawk-X-Y-Z.tar.gz | смолы -xf-
2) CD-runawk X-Y-Z
3) сделать
4) (опционально!) Сделать Install-каталоги
5) сделать установку
Есть много Makefile переменных, которые могут быть изменены во время
. Установка и NBSP; Собственные переменные Runawk (в Все, что они находятся в начале из
Makefile):
И NBSP; PREFIX и NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; - Где runawk устанавливается в
И NBSP; MODULESDIR и NBSP; & NBSP; & NBSP; & NBSP; - Каталог, в котором модули будут установлены в
И NBSP; AWK_PROG и NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; - Путь к AWK переводчика
И NBSP; STDIN_FILENAME - путь к файлу стандартного ввода устройства
Переменные BSD сделать (в наиболее часто используемых,
для всех остальных - в документации Сделайте х и .mk файлов)
И NBSP; BINDIR - где runawk сам исполняемый файл устанавливается в
И NBSP; MANDIR - где страницы руководства устанавливаются в
И NBSP; BINOWN - runawk исполняемый владельца
И NBSP; BINGRP - runawk исполняемый группу
И NBSP; MANOWN - мужчина владелец страницы
И NBSP; MANGRP - мужчина группы страниц
Пример:
И NBSP; & NBSP; ENV CC = GCC
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; PREFIX = / Главная / Чеусов / местный
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; LDFLAGS = '- L / USR / Упаковка / Lib -Wl, -rpath -Wl, / USR / Упаковка / Lib'
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; LDADD = -lextralib
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; CFLAGS = '- Werror -Wall "
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; CPPFLAGS = -I / USR / Упаковка / включить
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; BINOWN = Чеусов
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; BINGRP = Пользователи
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; MANOWN = Чеусов
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; MANGRP = Пользователи
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; MKCATPAGES = нет
И NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; сделать -s все установки, Dirs установить

Что нового в этой версии:

  • Параметры -i, -I, и все длинные варианты были полностью удалены.
  • опция -T был добавлен для вкладок входа.
  • опция -v описано в справочной странице.
  • Исправлены ошибки в GCC компиляции предупреждений.
  • Исправлены ошибки в составлении с непустым MAKEOBJDIR.
  • Typo исправления в новых, runcmd.awk, и человек страниц.

Похожие программы

Tiny C Compiler
Tiny C Compiler

3 Jun 15

Android SDK
Android SDK

22 Jun 18

JRuby
JRuby

17 Feb 15

o42a
o42a

19 Feb 15

Другие программы разработчика Aleksey Cheusov

DictEm
DictEm

20 Feb 15

paexec
paexec

20 Feb 15

mk-configure
mk-configure

20 Feb 15

Комментарии к runawk

Комментарии не найдены
добавить комментарий
Включите картинки!