sed 提取直到第二个单词后的第一个空格

bro*_*oat 1 shell awk sed

我们如何使用 sed 获取 " Install ID:" 和后面第一个空格之间的 4 个字符XKCD,基本上我想XKCD从中提取 " " 字符串

Install ID:          XKCD (8426200,8179503)
Run Code Online (Sandbox Code Playgroud)

我尝试使用 -

 echo "Install ID:          XKCD (8426200,8179503)" | sed -n 's/^.*ID:\(.*\)*$/\1/p'
Run Code Online (Sandbox Code Playgroud)

但这给了我“ XKCD (8426200,8179503)”而不是仅仅XKCD。我无法弄清楚如何处理空间部分。

Pau*_*ce. 5

对您的尝试进行一些小修改:

echo "Install ID:          XKCD (8426200,8179503)" | sed -n 's/^.*ID: *\([^ ]*\) .*$/\1/p'
Run Code Online (Sandbox Code Playgroud)

或者

echo "Install ID:          XKCD (8426200,8179503)" | awk '{print $3}'
Run Code Online (Sandbox Code Playgroud)