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

Har*_*ain 14 bash shell

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

echo "first second third etc"|cut -d " " -f1
Run Code Online (Sandbox Code Playgroud)

sle*_*ort 32

你应该看看info cut,这将解释什么f1意思.此外,同样的问题:问题-7814205

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

echo "first second third etc" | cut -d " " -f2-
Run Code Online (Sandbox Code Playgroud)


Mat*_*Mat 12

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

$ foo="a b c d"
$ echo "${foo#* }"
b c d
Run Code Online (Sandbox Code Playgroud)


Aam*_*mir 6

你可以做:

echo "first second third etc" | cut -d " " -f2-
>> second third etc
Run Code Online (Sandbox Code Playgroud)