文件分割:
77.txt内容
adss
weerwe
fdsf
bfdbfd
fdfs
weerwe
fdsf
bfdbfd
fdfs
一 、实现将大文件按照首字母分割到不同的小文件中
实现:
取首字母:{substr($1,1,1);
写入首字母的文件中
cat 77.txt |awk '{substr($1,1,1);print>"./split/split_"substr($1,1,1)".txt"}'
得到:
split_a.txt split_b.txt split_f.txt split_w.txt
88.txt内容:
[1][a][oo][11]
[1][b][oo][11]
[1][c][oo][11]
[1][d][oo][11]
[1][e][oo][11]
二、实现取第二个[]中间的内容进行分割:
实现一:
按照]分割,得到的第二个元素,按照[分割之后,生成数组,写入数组[2]的文件中
cat 88.txt |awk -F '\\]' '{split($2,arr,"\\[");print>arr[2]".txt"}'
实现二:
同时指定两个分隔符,直接输出文本至文件名中含第4个字段的txt文件中
cat 88.txt |awk -F '[\\[\\]]' '{print>$4".txt"}'
得到
a.txt b.txt c.txt d.txt e.txt
a.txt b.txt c.txt d.txt e.txt