Linux 基础 - AWK 用法
AWK 去重
awk '{a[$1]++}{!b[$0]++}END{for (i in a) print i,"-",a[i]}' 源文件
{a[$1]++} :表示你需要去重的那一列,放到数组A中 //计数
!b[$0]++ 去重
AWK 消除字符
awk -F " " '{gsub(/ /,"", $0 );print $0 ;}' 源文件
-F " "(表示以空格为分界符)
gsub 为awk 内置函数
使用方式: gsub(/ /,"", $0) / / 斜杠内,就是你需要删除的东西。斜杠内容一般为 字符 、 空格、引号、冒号 等等
根据需要删除对应的字符即可。
" " 第二个参数为内置分隔符
$0 第三个参数为你需要修改的变量。例如awk 提取的第一列,或者 多列。
AWK 还有其它的内置变量
sub(/^[[:blank:]]*/,"",变量) 是去掉变量左边的空白符 // 注释 blank 是表示空白
sub(/[[:blank:]]*$/,"",变量) 是去掉变量右边的空白符 // 注释 blank 是表示空白
AWK将文本合并到一行
awk ' { printf ("%s ", $0)} END {printf ("\n") } ' 源文件
可以是printf 内置函数进行处理
也可以这样写
awk '{print $1}' 源文件 |tr "\n" " "
使用tr 命令对 换行符进行替换
开开心心,上班!
快快乐乐,游玩!
及时行乐!