问题标签 [gawk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - 以 bash reverse-search-history 样式搜索文件
我正在尝试编写一个函数,它将以与反向搜索历史相同的方式搜索文件。即用户开始输入,提示更新为第一个匹配,点击一个特殊键旋转通过其他匹配,点击另一个特殊键选择当前匹配。
我为此编写了一个 bash 脚本,但速度非常慢。想知道我是否可以利用其他一些 unix/bash 功能来加快速度。也许使用awk?
任何想法,将不胜感激。
对于这个脚本,TAB 循环匹配,ENTER 选择当前匹配,ESC 结束,BACKSPACE 删除当前搜索中的最后一个字符。(原谅我狡猾的 bash 脚本,我对 bash/unix 比较陌生)
awk - 使用 awk 替换两个字符串
我想用文件中的换行符@@
替换^
和替换。¤¤
为此,我编写了下面的代码,但感觉有一个更优雅的解决方案,然后调用 gawk 两次。谁能告诉我有没有?
regex - awk match() - 每行多个
我在 gawk 中使用 match() 函数从 HTML 文件中获取链接。正则表达式是这样的:
我似乎无法在最后使用“/g”选项来获得每行多个匹配项?
bash - Shell 脚本和 gawk 的使用以及算术运算
我有一个制表符分隔的文件,我想对文件中存在的列执行一些数学计算。
让文件名sndf
具有$tag
一些整数值,我想首先找到第 3 列和第 2 列的值之间的差异,然后将第 4 列的值除以中的值$tag
再次将结果除以第 3 列和第 2 列的值的差异,最后结果乘以 100。
该命令将答案写入输出文件 4 次而不是 1 次.....你们都可以提出改进建议吗?谢谢你
解决方案:亲爱的,我已经解决了问题,感谢大家阅读问题并投入时间。
sed - gawk/sed 的嵌套分隔符问题
我有需要拆分的文本:
我已经尝试过这些变体,但一直被我不想拆分的“内部”分隔符抓住!!:
gawk -F "[" -v RS=","NF{print $0}" text.txt
如何拆分它们(1)首先在主“{”上,忽略内部“{”(2)然后在逗号上,忽略大括号之间的逗号。然后我想只输出一个或两个这样的字段:
suspend_at: '2011-05-12 15:14:02', ev_id: 2666872, ev_type_id: 10744, type_name: '|UK 100|'
提前致谢。
regex - gawk 中的正则表达式疑问
我的 csv 数据文件是这样的
现在你可以看到我想避免像第 2 行和第 3 行这样的所有数据(即没有空格或数据长度 >= 3)
并将其放在一个名为rejected_list.csv 的文件中,其余的都放在一个名为clean_list.csv 的文件中
因此这是我的 gawk 脚本
我的问题是这个脚本无法识别 '\S' 字符集(除空格外的所有字母).. 它选择所有以 S 开头或具有 S 的单词并拒绝其余单词
像 /([AZ])/ 这样的简单正则表达式代替 /s 可以完美运行,但是当我将限制设置为 {3,} 时,脚本失败..
我已经尝试了正则表达式与'*'、'+'等的各种组合,但我无法得到我想要的......
谁能告诉我有什么问题?
unix - AWK 脚本 - 这个脚本有什么作用?
我需要重复处理这个AWK 脚本,但不知道它在做什么。谁能告诉这个脚本的基本功能是什么?
它需要一个输入文件,并创建一个输出文件,但我无权访问这两个文件来查看它在做什么。它与分隔输入文件中的列的管道分隔符有关。
linux - 将字段“N”打印到行尾
我想就我在 awk 中遇到的问题获得帮助或指导。
我有一个超过 5 个字段的制表符分隔文件。我想输出不包括前 5 个字段的字段。
你能告诉我如何编写一个 awk 脚本来完成这个任务吗?
最好的,建峰.mao
请注意以下友好评论:
我的文件中有很多字段。不同的行有不同数量的字段。每行的字段数不是标准的。
awk - 表达式中的无效字符 ' ' '
嗨,我有以下 awk 程序
问题是当我执行awk -f make.awk info.txt时,我不知道为什么它会在第 3 行抱怨“ awk ' invalid char ' ' ' in expression ”
你们有谁在这方面比我聪明吗?=)
awk - 为什么这个 awk 脚本的行为不符合预期?
我有以下测试脚本
并且正在从此文本文件中读取
但它没有打印出我想要的东西,我想要它打印出来
当它实际上只是打印出来时
那么为什么 "DATEd[$3] = $1" 是空的呢?
另外如何检查数组的长度?DATEd.length 在这种情况下不起作用。
谢谢
编辑_ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ ___
所以在@Fredrik 和@geekosaur 的帮助下,我来到了某个地方,现在是最后几个问题
1) 脚本现在看起来像这样
并给出以下输出
但我希望它看起来像这样
IE 被排序并删除最后一个 ',' 字符之前的最后一个关闭 ']' 字符。这有可能以一种简单的方式接受吗?=)
谢谢 =)
编辑 3 最终结果_ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ ____
使用了@geekosaur 和@Fredrik 贡献的组合 =)