【发布时间】:2014-08-17 02:22:34
【问题描述】:
为了简化讨论,让N = 3。
我目前提取文件或流中每一行的最后三个字符的方法是使用sed 捕获组中的最后三个字符并将整行替换为该组。
sed 's/^.*\(.\{3\}\)/\1/'
它可以工作,但似乎过于冗长,尤其是当我们与获取一行中的前三个字符的方法进行比较时。
cut -c -3
有没有更简洁的方法来提取每行的最后 N 个字符?
【问题讨论】:
-
@PeterSchneider 这将删除最后 3 个字符,而不是保留它们。
-
@Barmar 确实!我看错了问题。
-
@Barmar,我稍微修改了这个问题。我写的太具体了。
-
@Barmar,我目前正在测试下面答案的通用版本。
标签: bash command-line awk sed cut