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


 删除文件每一行的前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.cnblogs.com/jiu0821/p/6268500.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM