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

发布于 2024-09-28 05:40:33 字数 173 浏览 5 评论 0原文

假设我有这样的句子:

My name is bob.

并且我想将该句子中的“is”一词复制到变量中。如果事先不知道我要查找的单词,我将如何访问该单词?如果我知道特定的单词或字符串位于五列文本行的第三列文本中,我如何获取第三列中的单词?

我正在使用 bourne shell。

Suppose I have this sentence:

My name is bob.

And I want to copy the word "is" from that sentence into a variable. How would I access that word, without knowing in advance the word I am looking for? If I know a specific word or string is in the third column of text in a five column text line, how can I take the word in the third column?

I'm using the bourne shell.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

凝望流年 2024-10-05 05:40:33
word=$(cut -d ' ' -f 3 filename)

cut 为我们提供了每行的第三个字段(在本例中为 1)。 -d 用于指定空格作为分隔符。 $() 捕获输出,然后将其分配给 word 变量。

word=$(cut -d ' ' -f 3 filename)

cut gives us the third field of each line (in this case there's 1). -d is used to specify space as a delimiter. $() captures the output, then we assign it to the word variable.

那片花海 2024-10-05 05:40:33

您可以使用 cutawk 等。

示例:

awk '{print $3}' my_file.txt

you can use either cut, awk, etc.

Example:

awk '{print $3}' my_file.txt
一身软味 2024-10-05 05:40:33
sentence='My name is bob.'
set -- $sentence
echo $3

或者

sentence='My name is bob.'
set -- $sentence
shift 2    # or use a variable
echo $1
sentence='My name is bob.'
set -- $sentence
echo $3

or

sentence='My name is bob.'
set -- $sentence
shift 2    # or use a variable
echo $1
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文