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

时间:2012-12-09 14:13:11

标签: bash shell

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

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

5 个答案:

答案 0 :(得分:29)

您应该查看info cut,它将解释f1的含义。此外,同样的问题:question-7814205

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

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

答案 1 :(得分:11)

您可以使用substring removal,无需外部工具:

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

答案 2 :(得分:6)

你可以这样做:

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

答案 3 :(得分:3)

尝试这样做:

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

中解释
 man cut | less +/N-
  从第N个字节,字符或字段到行尾

至于您拥有标记,您可以像这样使用bash parameter expansion

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

答案 4 :(得分:1)

试试这个: -

  echo "first second third etc"|cut -d " " -f2-
相关问题