awk 使用总结
- 单引号双引号输出
1.双引号:
1 | awk '{print "\""}' |
使用“”
双引号把一个双引号括起来,然后用转义字符\
对双引号进行转义,输出双引号.
2.单引号:
1 | awk '{print "'\''"}' |
使用一个双引号“”
然后在双引号里面加入两个单引号‘’
,接着在两个单引号里面加入一个转义的单引号\'
,输出单引号.
- 字符串操作
1.取子串
1 | substr(String, M, [N]) |
2.分割域访问NF
代表域个数,$NF
最后一个,$(NF-1)
倒数第二个
字符串,数字比较直接<=
;>=
;==
这样
1 | -F'xxx'用xxx分割 |
3.分割结果保存到数组($())
,例如想将ls -l
的文件列表分割出来:
1 | file_list=($(hadoop fs -ls /user/hive/warehouse/xxx.db | grep user | awk -F' ' '{print $NF}')) |
这个就是获取hdfs上指定库目录的所有表名,然后就可以for遍历
1 | for table in ${file_list[@]};do |