![回显文件行 - 但每行不超过 N 个字符](https://linux22.com/image/92079/%E5%9B%9E%E6%98%BE%E6%96%87%E4%BB%B6%E8%A1%8C%20-%20%E4%BD%86%E6%AF%8F%E8%A1%8C%E4%B8%8D%E8%B6%85%E8%BF%87%20N%20%E4%B8%AA%E5%AD%97%E7%AC%A6.png)
我想将tail
文件的(也可以head
或cat
一般)打印到屏幕上,但限制每行的字符数。
所以如果一个文件包含...
abcdefg
abcd
abcde
abcdefgh
...最大数量为 5,则应打印以下内容:
abcde
abcd
abcde
abcde
我该怎么做呢?
答案1
tail yourfile |cut -c 1-5
....
答案2
你可以尝试
sed 's/\(.\{5\}\).*/\1/' file.txt
答案3
这么多方法:
grep
:
$ tail file.txt | grep -o '^.\{,5\}'
abcde
abcd
abcde
abcde
sed
:
$ tail file.txt | sed 's/^\(.\{,5\}\).*/\1/'
abcde
abcd
abcde
abcde
awk
:
$ tail file.txt | awk '{print substr($0,1,5)}'
abcde
abcd
abcde
abcde