gpt4 book ai didi

linux - 用于打印字符串的一部分的命令?

转载 作者:太空宇宙 更新时间:2023-11-04 05:56:52 25 4
gpt4 key购买 nike

我有一个文件名test ,它包含一个字符串 James Bond 007 ,我只想打印 James Bond 。我尝试了以下命令:

$ strings -n 2 test
$ sed -n '/James/,/Bond/p' test
$ awk '{print substr($1,10)}' test

最佳答案

要打印前两个单词,您可以使用awk:

awk '{print $1, $2}' test

要打印前十个字符,可以将文件内容放入变量中,然后使用bash子字符串操作:

contents=$(cat test)
echo "${contents:0:10}"

或者在awk中:

awk '{print substr($0, 1, 10)}' test

请注意,$0 表示整行,您必须为 substr() 提供起始索引和长度。 awk 中的索引从 1 开始,而不是从 0 开始。

sed中,/James/,/Bond/是行范围表达式;它处理从包含 James 的行开始到包含 Bond 的行的所有行。它不只处理部分行。

关于linux - 用于打印字符串的一部分的命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56157638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com