您的位置:首页 > 运维架构 > Linux

Linux sed命令操作 删除文件每一行的前k个字符、在文本的行尾或行首添加字符

2017-12-22 14:24 1066 查看

 删除文件每一行的前k个字符

$ cat tmp.txt
123456789
123456789
123456789

# 删除每行第一个字符
$ sed 's/.//' tmp.txt
23456789
23456789
23456789

# 删除每行前两个字符
$ sed 's/..//' tmp.txt
3456789
3456789
3456789

# 删除每行前k个字符,例如k=5
$ sed 's/.\{5\}//' tmp.txt
6789
6789
6789

如果要在原文件上修改,加上参数-i就可以了

 

在文本的行尾或行首添加字符

$ cat tmp.txt
23456789
23456789
23456789

# 在行首添加双引号(")
$ cat tmp.txt | sed 's/^/"&/g'
"23456789
"23456789
"23456789

# 在行尾添加双引号和逗号(",)
$ cat tmp.txt | sed 's/^/"&/g' | sed 's/$/",&/g'
"23456789",
"23456789",
"23456789",

^代表行首,$代表行尾

 

参考:https://www.geek-share.com/detail/2695016480.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: