如何在 Bash 中删除字符串的第一部分



这段代码将给出第一部分,但是我如何删除它并获取没有第一部分的整个字符串?

echo "first second third etc"|cut -d " " -f1

你应该看看info cut,它将解释f1的含义。

实际上,我们只需要第二个字段之后的字段。 -f告诉命令按字段搜索,2-表示第二个和后续字段。

echo "first second third etc" | cut -d " " -f2-

您可以为此使用子字符串删除。不需要外部工具:

$ foo="a b c d"
$ echo "${foo#* }"
b c d

你可以做:

echo "first second third etc" | cut -d " " -f2-
>> second third etc

尝试这样做:

echo "first second third etc" | cut -d " " -f2-

 man cut | less +/N-
N

- 从第 N 个字节、字符或字段到行尾

只要你有 Bash 标签,你可以像这样使用 Bash 参数扩展:

x="first second third etc"
echo ${x#* }

试试这个:

  echo "first second third etc" | cut -d " " -f2-

相关内容

  • 没有找到相关文章

最新更新