linux - 关于如何使用脚本制作过滤器的问题

标签 linux shell batch-file filter

我正在尝试对脚本进行过滤以实现此目的:

之前:

123.125.66.126 - - [05/Apr/2010:09:18:12 -0300] "GET / HTTP/1.1" 302 290
66.249.71.167 - - [05/Apr/2010:09:18:13 -0300] "GET /robots.txt HTTP/1.1" 404 290
66.249.71.167 - - [05/Apr/2010:09:18:13 -0300] "GET /~leonardo_campos/IFBA/Web_Design_Aula_17.pdf HTTP/1.1" 404 324

之后:

[05/Apr/2010:09:18:12 -0300] / 302 290
[05/Apr/2010:09:18:13 -0300] /robots.txt 404 290
[05/Apr/2010:09:18:13 -0300] /~leonardo_campos/IFBA/Web_Design_Aula_17.pdf 404 324

如果有人能帮忙就好了...

提前致谢!

最佳答案

支持所有 HTTP 方法:

sed 's#.*\(\[[^]]*\]\).*"[A-Z]* \(.*\) HTTP/[0-9.]*" \(.*\)#\1 \2 \3#'

关于linux - 关于如何使用脚本制作过滤器的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3117311/

相关文章:

python-3.x - 如何使用 Homebrew 在我的 Mac 上默认 Python3.8?

linux - Cron 不运行 bash 脚本

El Capitan 下的 Python "app transport security"错误

shell - 将字符串传递给 while 循环

windows - 写一个只有 UTF-8 BOM 的空文件

php - 无法在 Ubuntu 21.04 上安装 PHP8.0 和 php8.0-pgsql

python - 如何将输入保存到 txt 文件。在linux命令行输入

linux - Bash,按大小将目录中的文件分成组(低性能)

batch-file - 批处理无法在if语句中获取值(value)

batch-file - 如何创建批处理文件计时器以全天执行/调用另一个批处理