从文本文件中提取一行中的第二个单词

Aar*_*rry 10 unix bash awk cut sed

我目前需要在文本文件中的一行中提取第二个单词(CRISTOBAL).

                 *   CRISTOBAL  AL042014  08/05/14  12  UTC   *
Run Code Online (Sandbox Code Playgroud)

"CRISTOBAL"行中的第二个单词每天都会有所不同,所以我只需要找到一种从行中提取第二个单词/字符的方法.

zed*_*xus 22

第二个字

echo '*   CRISTOBAL  AL042014  08/05/14  12  UTC   *' | awk  '{print $2}'
Run Code Online (Sandbox Code Playgroud)

会给你 CRISTOBAL

echo 'testing only' | awk  '{print $2}'
Run Code Online (Sandbox Code Playgroud)

会给你 only

如果线的结构发生变化,您可能需要修改它.

第二个单词来自文本文件中的行

如果您的文本文件包含以下两个句子

this is a test
*   CRISTOBAL  AL042014  08/05/14  12  UTC   *
Run Code Online (Sandbox Code Playgroud)

跑步awk '{print $2}' filename.txt会回来

is
CRISTOBAL
Run Code Online (Sandbox Code Playgroud)

第二个角色

echo 'testing only' | cut -c 2
Run Code Online (Sandbox Code Playgroud)

这将给你e,这是第二个角色,你可能需要修改它,以满足你的需求.