2

我正在尝试在 Bash 中编写一行来获取给定 URL 的 Content-Type(无编码)。这是我到目前为止所拥有的:

curl -Is http://www.google.com | sed -nr 's/^Content-Type: ([^;]*)/\1/Ip'

但是,这仍然是打印text/html; charset=ISO-8859-1,而不仅仅是text/html. 不应该([^;]*)在第一个分号后停止比赛吗?

4

1 回答 1

3

你想要的是:

curl -Is http://www.google.com | sed -nr 's/^Content-Type: ([^;]*).*/\1/Ip'

基本上.*在匹配组之后添加一个,以便 text/html 之后的部分;不会输出。

于 2012-06-01T05:44:59.907 回答