runawk

软件截图:
runawk
软件详细信息:
版本: 1.5.0
上传日期: 19 Feb 15
许可: 免费
人气: 76

Rating: 1.0/5 (Total Votes: 1)

runawk是一个很小的包装AWK解释器impements模块系统,并帮助编写独立AWK程序。
动机
经过多年的使用AWK进行编程的我发现,尽管
它的简单性和局限性AWK对于脚本足够宽的好
且具有不同的任务。 AWK并不像飞机的强大动力作为其做大
同行如Perl,Ruby的,TCL等,但它有自己的
像紧凑,几乎所有的简单性和可用性优势
UNIX类系统。我个人也很喜欢它的数据驱动的性质,
令牌的方向,​​对于简单的文本处理非常有用的技术
公用事业。
但是!不幸的是awk的解释缺乏一些重要的功能和
有时工作不是那么好,因为它是对子级。
有些问题,我看到(有些当然他们,)。
1)AWK缺乏对模块的支持。即使我创建的小程序,我
经常要使用以前创建的功能,已经被用于
其他脚本。也就是说,大对子级到orginise功能于
所谓库(模块)。
2)为了参数传递给#!的/ usr / bin中/的awk -f脚本(不AWK
解释器),有必要prepand列表
论点 - (二减SIGNES)。在我看来,这看起来很糟糕。
示例:
awk_program:
    #!的/ usr / bin中/的awk -f
   开始{
      对于(i = 1; I           printf的“ARGV [%D] =%S”,我,ARGV [I]
       }
    }
shell会话:
    %awk_program --opt1 --opt2
   的/ usr / bin中/ AWK:未知选项--opt1忽略
   的/ usr / bin中/ AWK:未知选项--opt2忽略
    %awk_program - --opt1 --opt2
    ARGV [1] = - OPT1
    ARGV [2] = - OPT2
    %
在我看来awk_program脚本应该是这样的(就像
正常程序办)
    %awk_program --opt1 --opt2
    ARGV [1] = - OPT1
    ARGV [2] = - OPT2
    %
它使用runawk是可能的。
3)当#!的/ usr / bin中/的awk -f脚本处理的参数(选项),并希望
从标准输入读取,就必须增加
为/ dev /标准输入(或' - ')作为一个明确地定义最后一个参数。
示例:
awk_program:
    #!的/ usr / bin中/的awk -f
   开始{
      如果(ARGV [1] ==“--flag”){
         标志= 1
          ARGV [1] =“”#不要看文件名为“--flag”
       }
    }
    {
      打印“标志=”标志“$ 0 =”0美元
    }
shell会话:
    %echo测试| awk_program - --flag
    %echo测试| awk_program - --flag的/ dev /标准输入
   标志= 1 $ 0 =测试
    %
理想情况下awk_program应该像这样工作
    %echo测试| awk_program --flag
   标志= 1 $ 0 =测试
    %
所有这些probles由runawk解决,这就是为什么我写的。
我还包括了几个模块来runawk分布,是
对我有用,我希望这将是对你也有帮助。
安装
0)BSD化妆是必要的。我的名字,它只是'做',但它真正的名称可能
  不同群组。 B进行和pmake是可能的名字。
  如果您需要更改默认的建设方案,
  运行make这样的
&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)(可选!)make install的 - 迪尔斯
5)制作安装
有很多的Makefile变量可以期间改变
。安装&NBSP; Runawk自己的变量(所有他们在开始时
Makefile文件):
&NBSP;前缀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 make的变量(最常用的,
对于所有其他 - 看化妆的文档和文件的.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 = /家庭/ cheusov /本地
&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 = cheusov
&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; BINGRP =用户
&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP; MANOWN = cheusov
&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。
  • 在NEW,runcmd.awk和手册页错字修复。

什么在1.4.4版本新

  • 在一个临时目录中删除子目录中的错误是固定的。
  • 在改进runawk_modules.3。

什么是1.4.3版本,新的

  • 在paexec(1)不使用系统( 3)再进行删除临时目录。
  • 在功能print_help()从power_getopt.awk模块移到init_getopt.awk。

什么是1.4.2版本,新的

  • 在这个版本增加了runawk_modules.3,所有模块据可查,不赞成长选项,删除-i和-I选项,包括手册页分发包等pod2man将不需要的建设。

什么在1.4.0版本新

  • 在exitnow.awk的exitnow(状态)函数现在完成的脚本执行不运行END部分即使状态== 0。
  • 在新的模块io.awk包括功能,确保对方{文件,目录,EXEC,插座,FIFO,blockdev,chardev,符号链接},FILE_SIZE和FILE_TYPE。 tokenre.awk有新的功能splitre0()。

什么版本1.3.2的新

  • 在内部阵列现在可以自动搬迁。此修复结合使用runawk(1)与xargs的(1),如猫files.txt |。xargs的runawk -e'...'

什么版本1.3.0的新

  • 在为英特尔C编译器警告消息的修复。

  • 从模块/ shquote.awk
  • 在该函数shquote(A修复)。
  • 在该项目的源代码已经进行了重组,从而使一个易于安装的任何子项目:实例,模块,runawk,alt_getopt和DOC(TODO,README等文件)

什么在1.1.0版本新

  • 系统-F选项加入
  • 在新ord.awwas ftrans_in.awk和glob.awk模块都包括在内。
  • 在一个新的alt_getopt可执行文件包含用于解析shell脚本短期和长期的选项。
  • 在新MIN3,min4,min5,min_key,MIN_VALUE和key_of_min_value(min.awk)和MAX3,MAX4,MAX5,max_key,MAX_VALUE和key_of_max_value提供了(max.awk)功能。
  • 在新的样本加入:例子/ demo_minmax,例子/ demo_tokenre3,例子/ demo_ftrans,例子/ demo_glob *
  • 在一个新的功能中添加了multisub.awk。
  • 在小的改进是安装过程中进行。

什么是0.16.0版本,新的

  • 在创建大量的演示程序对于大多数runawk模块与它们在实施例/子目录现在。新MEGA模块;-)power_getopt.awk查看文档和演示程序的例子/ demo_power_getopt。它使选项处理很容易。新模块:embed_str.awk has_​​suffix.awk has_​​prefix.awk readfile.awk modinfo.awk小幅修正和改进dirname.awk和basename.awk。现在,他们都与目录名(1)和基名完全兼容(1)RUNAWK设置以下环境变量为孩子AWK子:RUNAWK_MODC - 一个数字模块(-f文件名)传递给AWK RUNAWK_MODV_ - 完整路径模块#N ,其中n是在[0..RUNAWK_MODC)的​​范围。 RUNAWK设置RUNAWK_ART_STDIN环境变量为孩子AWK子为1,如果附加/人工' - '添加到列表中awk的参数。 Makefile中:B进行主义被拆除。现在的Makefile与FreeBSD的化妆完全兼容。 CLEANFILES目标是​​用手工制作的规则小调修复,而不是'test_all“目标

类似的软件

Racket
Racket

27 Sep 15

4tH compiler
4tH compiler

20 Feb 15

Embedthis Ejscript
Embedthis Ejscript

17 Feb 15

boot
boot

20 Feb 15

显影剂的其他软件 Aleksey Cheusov

DictEm
DictEm

20 Feb 15

mk-configure
mk-configure

20 Feb 15

paexec
paexec

20 Feb 15

意见 runawk

评论没有发现
添加评论
打开图片!