27得票10回答
持续监控日志,直到匹配某个模式

我想在一个文件上执行tail -F,直到匹配某个模式。我找到了一种使用awk的方法,但是我认为我的命令不够简洁。问题在于,因为一些限制,我必须只能使用一行代码。tail -n +0 -F /tmp/foo | \ awk -W interactive '{if ($1 == "EOF...

193得票11回答
在文件中打印一行的最后一列

我有一个正在不断被写入/更新的文件,我想要找到包含特定单词的最后一行,然后打印该行的最后一列。 该文件看起来像这样。随着时间的推移,将会追加更多A1/B1/C1行。A1 123 456 B1 234 567 C1 345 678 A1 098 766 B1 987 6545 C1 876 5...

10得票6回答
使用awk printf对文本进行URL解码

我正在使用 awk 对一些文本进行 URL 解码。 如果我直接在 printf 语句中编写字符串,如 printf "%s", "\x3D",它会正确输出 =。如果我将整个转义后的字符串作为变量,则同样可以正常输出。 但是,如果我只有 3D 这个字符,该如何添加 \x 以使得 printf...

11得票6回答
使用Shell删除列中的重复字符串

我有一个文件,其中有两列,以制表符分隔,如下所示:OG0000000 PF03169,PF03169,PF03169,MAC1_004431-T1, OG0000002 PF07690,PF00083,PF00083,PF07690,PF00083, OG0000003 MAC1_...

50得票5回答
根据日期范围过滤日志文件条目。

我的服务器CPU使用率异常高,我可以看到Apache占用了过多的内存。 我有一种感觉,可能是单个IP对我进行了DOS攻击-也许你可以帮我找到攻击者? 我使用了以下命令来查找最活跃的10个IP: cat access.log | awk '{print $1}' |sort |uniq -...

28得票9回答
在每个空行处分割大型文本文件

我有些困难,需要将一个大文本文件分割成多个小文件。我的文本文件的语法如下:dasdas #42319 blaablaa 50 50 content content more content content conclusion asdasd #92012 blaablaa 30 70 con...

8得票4回答
使用多个字段分隔符进行笨拙的转置数据

我正在尝试用一个awk命令来完成以下操作。 我有一个文本文件,其结构如下: 文件字段描述(不在文件中) 首个字段以“:”分隔,最后一个字段(主机列表)以空格分隔 唯一标识符:名称:唯一标识符:主机列表(可能为空,可能重复出现) sv_0:blabla:205700DD4C50626179...

16得票3回答
使用键值连接两个CSV文件

我有两个CSV文件,我想使用一个关键值,即城市列将它们连接起来。 其中一个CSV文件d01.csv的格式如下: Barcelona, 19.5, 29.5 Tarragona, 20.4, 31.5 Girona, 17.2, 32.5 Lleida, 16.5, 33.5 Vic, ...

72得票10回答
移除冒号前面的所有文本。

我有一个文件,其中包含若干行。每一行长这个样子:TF_list_to_test10004/Nus_k0.345_t0.1_e0.1.adj:PKMYT1 我想要删除“:”字符之前的所有内容,只保留PKMYT1这个基因名字。由于我不是正则表达式脚本的专家,有人能帮我用Unix(sed或awk)或...

9得票5回答
AWK中管道的用法

我想要的是获取当前行的反转字符串,我尝试使用AWK中的rev命令,但未能得到当前结果。 $ cat myfile.txt abcde $ cat myfile.txt | awk '{cmd="echo "$0"|rev"; cmd | getline result; print "re...