gawk相关内容
我要删除列数据中所有不可打印的换行符. 我已用双引号将所有列括起来,以轻松删除该列中出现的新行字符,并忽略行尾各行之间的记录定界符. 说,我在文本文件中有4列用逗号分隔,并用引号引起来. 仅当双引号之间出现\ n和\ r字符时,我才尝试删除它们. 当前使用的修剪,但是它删除了每个换行符,并使其成为没有任何记录分隔符的序列文件. tr -d '\n\r'
..
我试图在此gawk命令中了解一些javascript: gawk 'function getip(rec) { n=split(rec,a,"\""); split(a[n-1],ip,","); return ip[1] } $10 ~ /302/ && $6 ~ /POST/ && $7 ~ /^\/sso\/[pl]fe\/(rs|ui)\/login/ {
..
我在文本文件中有电子邮件地址列表.我有一个具有字符类的模式,该类指定了电子邮件地址中允许的字符. 现在,从该输入文件中,我只想搜索具有除所允许字符以外的字符的电子邮件地址. 我正在尝试为它编写一个gawk,但无法使其正常工作. 这是我要尝试的方法: gawk -F "," ' $2!~/[[:alnum:]@\.]]/ { print "has invalid chars" }' email
..
我正在尝试使用gawk在图案后插入一行. 假设文件aa包含 11 22 33 11 22 33 我仅在前22个之后(即在插入之后)使用gawk插入222,我的aa文件将包含: 11 22 222 33 11 22 33 但是,如果我使用: gawk -v nm=222 '/22/ {if (done++ == 0) print;print nm;next}1' aa
..
说我想出了一个匹配数据的正则表达式;正则表达式包含2个sed组(包含在(和)中的子表达式).还要说这个正则表达式重复了9次以匹配整行.我面临的问题是如何(以一种优雅的方式)每秒删除一次与正则表达式的匹配. 解决方案 假设您有以下字符串,并希望删除出现的bar: foo bar foo bar foo bar 您可以使用以下sed命令,请注意选项g,该选项使替换次数尽可能多:
..
我有一个脚本,该脚本可以接收许多布局相同但数据不同的数据文件,并将指定的数据列组合到一个新文件中,如下所示: gawk '{ names[$1]= 1; data[$1,ARGIND]= $2 } END { for (i in names) print i"\t"data[i,1]"\t"data[i,2]"\t"data[i,3] }' $
..
我有一个制表符分隔的csv文件.该文件按列6排序,该列是包含每个组的键的列.我需要在每个组后面插入一个字符串作为分隔符. 输入: car camaleon queso cabra coche 531 cama leon lechuga dow click comedia clase tierno 531
..
我不知道为什么我无法遍历所有记录.目前,它用于最后一条记录,并为它打印规范化. 归一化公式: New_Value =(值-min [i])/(max [i]-min [i]) 程序 { for(i = 1; i
..
我希望能够将数组变量传递给awk.我不是说一个shell数组,而是一个本机的awk数组.我知道我可以像这样传递标量变量: awk -vfoo="1" 'NR==foo' file 我可以使用相同的机制来定义awk数组吗?像这样: $ awk -v"foo[0]=1" 'NR==foo' file awk: fatal: `foo[0]' is not a legal variab
..
在awk中,我有2个字段:$ 1和$ 2. 它们都是我想要连接并分配给变量的字符串. 解决方案 只需使用var = var1 var2,它将自动连接vars var1和var2: awk '{new_var=$1$2; print new_var}' file 您可以在之间添加空格: awk '{new_var=$1" "$2; print new_var}' fil
..
如何告诉gawk使用两个不同的定界符,以便我可以分隔某些列,但使用文件的制表符分隔格式选择其他列? > cat broad_snps.tab chrsnpID rsID freq_bin snp_maf gene_count dist_nearest_gene_snpsnap dist_nearest_gene_snpsnap_protein_coding d
..
我有一个大的(2GB)逗号分隔文本文件,其中包含来自Sensor的一些数据.有时传感器关闭并且没有数据.如果每行中的No Data或Off或any non-numeric值的数量超过指定的数量,我想删除这些行;不包括标题.我只想从第3栏起算.例如:我的数据如下: Tag, Description,2015/01/01,2015/01/01 00:01:00,2015/01/01 00:02:
..
我的输入是一个制表符分隔的文本文件,在D-M-S中为lat long. 我要求输出以十进制度为单位 我在php中有代码,但这计算起来很慢. 可以使用awk更快地完成此操作吗? node name id latitude longitude seq nodex name1 70 N53-24-31.126 W6-20-46.982 59126 nod
..
我正在从现有的源代码中创建文档.我一直在环顾四周,类似awk的东西似乎可以工作,但是到目前为止我还没有运气.信息分为两个文件file1.c和file2.c. 注意:我已经为程序设置了自动构建环境.这将检测源中的更改并进行构建.我想生成一个文本文件,其中包含自上次成功构建以来已修改的所有变量的列表.我要查找的脚本将是构建后的步骤,并且将在编译后运行 在file1.c中,我有一个函数调用列
..
我有以下测试脚本 /^[^a-zA-Z0-9]/ { DATEd[$3] = $1 } END { print " \"data\": [" for (i = 0 ; i
..
我想从下面的数据计算总和和比率值. (实际数据包含超过200,000列和45000行(行)). 为清楚起见,我仅给出了简单的数据格式. #Frame BMR_42@O22 BMR_49@O13 BMR_59@O13 BMR_23@O26 BMR_10@O13 BMR_61@O26 BMR_23@O25 1 1 1 0
..
我的数据是一个大型文本文件,由12行重复组成.看起来像这样: { 1 2 3 4 5 6 7 8 9 10 } 一遍又一遍.我想将每12行变成一列.因此数据看起来像这样: { 1 2 3 4 5 6 7 8 9 10 } { 1 2 3 4 5 6 7 8 9 10 } { 1 2 3 4 5 6 7 8 9 10 } 我发现了一些使用awk将所有行转换为列的示例:awk '{
..
我有一个生成如下输出的编译器: >>> Warning "c:\some\file\path\somefile.h" Line (x,y): warning comment 例如: >>> Warning 100 "c:\some\file\path\somefile.h" Line 10(5,7): you are missing a ( >>> War
..
我有几个大型日志文件,其中包含以下格式的行: /resource/text_(moretext 现在这些文件都需要用“)"关闭,但是文件太大了,无法手动执行.不幸的是,这些行中的文本可以是任何东西.因此,我想我需要一个能够找到所有具有“("而没有“)"的行的表达式.然后,这些行必须替换为完全相同的内容,但最后要添加“)". 所以它应该像这样: 之前: /resourc
..
我有两个文件,我需要根据时间列对行进行排序和合并: 文件A: "2014-02-26 16:03:04" "Login Success|isNoSession=false" id=csr,ou=user,dc=openam,dc=forgerock,dc=org 7efb2f0e035a0e3d01 10.17.174.30 INFO dc=openam,d
..