用cut命令从右侧提取代码?

vfc*_*sts 12 bash cut substring

有一个使用该cut命令从左侧开始提取字符串部分的示例.下面给出一个例子.

$ echo "abc-def-ghi-jkl" | cut -d- -f-2
abc-def
Run Code Online (Sandbox Code Playgroud)

如何修改相同的代码以从右侧提取?我想过要翻转单词并应用相同的方法,但它太复杂了.

iru*_*var 16

你可以用rev

echo "abc-def-ghi-jkl" | rev | cut -d- -f-2 | rev
Run Code Online (Sandbox Code Playgroud)


Joh*_*ica 6

$ echo "abc-def-ghi-jkl" | cut -d- -f3-
ghi-jkl
Run Code Online (Sandbox Code Playgroud)

-2切入第二场.3-切入第3场.

  • 仅当您事先知道每行将包含多少个字段时,此方法才有效。 (2认同)
  • @JohnKugelman - 在您回答之后 5 年并重新审视它之后,我认为 iruvar 的答案是更好的答案。鉴于他几乎与我的评论同时回答了这个问题,我认为这只是公平的。希望超过 193K 的排名你不应该错过积分:)。我今天不得不重新审视这个问题,并记得我在stackoverflow上有一个类似的问题 (2认同)
  • 不,不,不!:'-( (2认同)