如何从一行文本中选择一个给定的列?

Waf*_*les 14 unix shell sh

假设我有这句话:

My name is bob.

我想把那句话中的"是"一词复制成一个变量.如果事先不知道我要找的那个词,我怎么才能访问这个词?如果我知道特定单词或字符串位于五列文本行的第三列文本中,我该如何在第三列中使用该单词?

我正在使用bourne shell.

Mat*_*hen 18

word=$(cut -d ' ' -f 3 filename)
Run Code Online (Sandbox Code Playgroud)

cut给我们每行的第三个字段(在这种情况下有1个). -d用于将空格指定为分隔符. $()捕获输出,然后我们将其分配给word变量.


Ben*_*oit 8

您可以使用cut,awk等等.

例:

awk '{print $3}' my_file.txt
Run Code Online (Sandbox Code Playgroud)