I need a one-liner to remove the first five characters on any line of a text file. How can I do that with sed?
我需要一个一行来删除文本文件中任何一行的前五个字符。用sed怎么做呢?
4 个解决方案
#1
36
sed 's/^.....//'
means
意味着
replace ("s", substitute) beginning-of-line then 5 characters (".") with nothing.
替换(s,替换)开始行,然后用5个字符(".")替换为空。
There are more compact or flexible ways to write this using sed or cut.
有更紧凑或更灵活的方法来使用sed或cut编写。
#2
80
Use cut
:
减少使用:
cut -c6-
This prints each line of the input starting at column 6 (the first column is 1).
这将打印从第6列开始的每一行输入(第一列是1)。
#3
10
sed 's/^.\{,5\}//' file.dat
#4
7
awk '{print substr($0,6)}' file
#1
36
sed 's/^.....//'
means
意味着
replace ("s", substitute) beginning-of-line then 5 characters (".") with nothing.
替换(s,替换)开始行,然后用5个字符(".")替换为空。
There are more compact or flexible ways to write this using sed or cut.
有更紧凑或更灵活的方法来使用sed或cut编写。
#2
80
Use cut
:
减少使用:
cut -c6-
This prints each line of the input starting at column 6 (the first column is 1).
这将打印从第6列开始的每一行输入(第一列是1)。
#3
10
sed 's/^.\{,5\}//' file.dat
#4
7
awk '{print substr($0,6)}' file