linux - 使用awk从文本文件中提取数据

标签 linux sed awk

<分区>

Possible Duplicate:
Extract data between two points in a text file

例如:

Reply: [200/OK] bytes=29086 time=583ms

我想提取“time=”和“ms”之间的值

预期结果:

“583”

最佳答案

我会为此使用 sed,但既然你要求 awk:

echo "Reply: [200/OK] bytes=29086 time=583ms" | awk -F'time=|ms' '{print $2}'

-F 定义字段分隔符的扩展正则表达式。所以我们定义“time=”或“ms”分隔字段,然后打印第二个字段。

使用 sed,它将是:

echo "Reply: [200/OK] bytes=29086 time=583ms" | sed 's/.*time=\([0-9]*\)ms.*/\1/'

关于linux - 使用awk从文本文件中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6997767/

相关文章:

linux - 虚拟主机链接到内部地址

python - Linux 2.6下python安装HDF5和H5PY

awk - 如何在 sed 语句中评估 awk ?

awk 作为 ifconfig 过滤器

awk - 在文件的每一列之前在新行中打印列1

linux - Windows 性能计数器移植到 Linux、HP-UX 和 AIX

java - 为什么这个 Java 代码打印两个参数?

mysql - 如何将隐含年份添加到未指定年份的字符串中?

linux - 在 sed 中编程 rev

linux - 如何使用 AWK 或 Sed 在 x 个单词后插入换行符\n