sed 在字符串后删除所有内容?

erd*_*rds 2 sed

我正在尝试使用 sed 删除以下行的其余部分: HTTP1.1" 200

我不知道如何让 sed 理解我想要整个事情作为一个字符串来匹配,包括双引号和空格。

一个很好的例子,我想转:

"GET /images/loading.gif HTTP/1.1" 200 10819 "https://...
Run Code Online (Sandbox Code Playgroud)

进入

"GET /images/loading.gif HTTP/1.1" 200
Run Code Online (Sandbox Code Playgroud)

Ant*_*hon 8

当您从命令行使用 sed(或大多数其他工具)时,您必须用空格引用字符串。由于您已经使用了双引号,因此您必须使用单引号:

echo '"GET /images/loading.gif HTTP/1.1" 200 10819 "https://...' | \
     sed 's|HTTP/1.1" 200.*|HTTP/1.1" 200|'
Run Code Online (Sandbox Code Playgroud)

给出:

"GET /images/loading.gif HTTP/1.1" 200
Run Code Online (Sandbox Code Playgroud)