linux awk 改变文件的内容的分隔符并添加行号
linux awk 改变文件的内容的分隔符并添加行号以下是范例内容,使用‘,’分隔符$ cat testfile.out
3232,32332,54545,34
3233,45645,23233,23
1211,1212,4343,434
3434,121121,121,33
替换文件内容中,为|并且为每行添加新的行号,输出结果为:
1|3232|32332|54545|34
2|3233|45645|23233|23
3|1211|1212|4343|434
4|3434|121121|121|33
方法一:通过awk 内置gsub函数进行内容替换
awk -F " " '{printf NR"|" } {gsub(/ /,"|",$0)}1' testfile.out
此处的-F " " 可以省略不写,因为awk默认是使用空格分割
方法二:也是通过awk另一种实现方式,通过修改默认的分隔符
awk 'BEGIN{FS=",";OFS="|"} {$1=$1; print NR,$0}' testfile.out
命令解释:FS=',' 为输入分隔符 OFS="|" 为输出分隔符
方法三:通过Linux tr 命令
tr ',' '|' < file.txt
不过此方法输出的结果为:
3232|32332|54545|34
3233|45645|23233|23
1211|1212|4343|434
3434|121121|121|33
此处并没有输出行号
热门日志
分类
- Django(4)
- ssdb(1)
- Mac(7)
- C(1)
- memcache(1)
- Python(32)
- Vim(8)
- sed(2)
- ansible(3)
- awk(4)
- shell(3)
- about(1)
- git(9)
- bat(4)
- svn(0)
- docker(1)
- Tornado(1)
- go(2)
- 架构(18)
- Vue(1)
- game(2)
- Html(6)
- Java(8)
- Mysql(37)
- Ajax(2)
- Jsp(1)
- Struts(8)
- Linux(72)
- JavaScript(39)
- Staruml(0)
- Mouth(1)
- Php(102)
- Windows(8)
- Message(48)
- Lua(10)
- Compute(1)
- Redis(7)
- Nginx(12)
- Jquery(1)
- Apache(1)
- cocos2d-x(8)