GAWK使用-i inplace选项将字符串打印到STDOUT

书法

我想运行一个GNU AWK脚本,该脚本就地编辑文件(例如,使用该-i inplace选项),并使其将正在处理的文件名打印到STDOUT。有没有办法做到这一点?以下只是将文件名添加为修改后文件的第一行,而不是在命令行上打印文件名:

BEGINFILE {
  print FILENAME
}
oguz ismail

这是一种解决方法;-i inplace从命令行(虽然不是必须的,请参阅-e/ -f放下然后在脚本的开头放置以下内容。在开始处理文件内容之前,这将inplace暂时禁用并打印FILENAME然后inplace,的BEGINFILE规则将再次启用。

BEGINFILE {
    if (inplace::filename != "") {
        inplace::end(inplace::filename, inplace::suffix)
        inplace::filename = ""
    }
    print FILENAME
}

@include "inplace"

查看如何inplace实现以更好地理解。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将cmd stdout和stderr作为字符串返回,而不是在golang中打印到控制台

如何在不使用syscall的情况下将字符串打印到x86-64程序集(NASM)中的终端?

如何对gawk使用多次传递?

如何使用printf在C中将utf-8编码字符串打印到屏幕上?

返回参数sed / grep / awk / gawk中的字符串

在批处理文件中使用gawk我在将行从格式A重新格式化为格式B时遇到麻烦

在Python中,是否存在使用.format表示法将列表打印到字符串中的方法?

如何使用显式的“从步骤i将s的切片从i转换到j”来反转字符串?

如何使用RIO库将内容打印到stdout

在我的函数中得到“ TypeError:无法在类似字节的对象上使用字符串模式”。我正在尝试将MAC地址打印到屏幕上

使用gawk提取列中带有字符串的行

在任何字符串上使用log()方法,并将字符串打印到控制台

使用bat中的换行符将多个字符串打印到文件中

在bash脚本中使用ffmpeg将视频数据打印到stdout

使用awk或gawk提取字符串的一部分

使用Logstash 1.4将字符串打印到stdout吗?

ASP.Net使用首选项将PDF直接打印到打印机

如何使用jQuery将字符串打印到打印机

从文件开头获取值,将值插入为新列,使用AWK / GAWK / SED修剪开始的行

使用'for i in string'反转字符串中的字符

使用gawk合并数据

使用Rebol将二进制数据打印到stdout

gawk printf缺少字符

将字符串转换为gawk或awk中的日期时间戳

使用Matlab将串联的字符串打印到屏幕和文本文件

ruby 将字符串转换为 int 而不使用“to_i”

如何使用子字符串将变量的一部分打印到屏幕上并使用 indexOf 方法确定输入中是否包含“@”符号

如何使用gawk打印出大于10个字符的第3列而不考虑字符串中的逗号

gawk - 使用自定义字符分隔行且没有类似的结束字符