awk 分隔符使用
Awk 不打印第一列的内容
history | grep tsh | awk '{$1=""; print $0}'
行输入分隔符RS,默认为换行符,表示一行一行读取,遇到\n停止。 为空时 按照段落读取。表示一次性读取的数据。
行输出分隔符 OFS,默认也是换行符,表示一行一行输出。
输入列分隔符 -F, 也可使用内置变量 -v FS
输出分隔符 使用内置变量 -v OFS FS
#awk 取出ifconfig 中的第一段
ifconfig | awk 'BEGIN {RS="\n\n"} NR==1 {print}'
FS:指定读取文本时,所使用的行分隔符,默认为 空格,相当于awk的—F选项
OFS:指定输出的分隔符,默认为空白字符;
[root@wei awk]# head -n 1 /etc/passwd | awk -F: '{print $1,$7}'
root /bin/bash
#FS模式
[root@wei awk]# head -n 1 /etc/passwd | awk 'BEGIN{FS=":"}{print $1,$7}'
root /bin/bash
#OFS模式
[root@wei awk]# head -n 1 /etc/passwd | awk -F: 'BEGIN{OFS="---"}{print $1,$7}'
root---/bin/bash
#模式混合
[root@wei awk]# head -n 1 /etc/passwd | awk 'BEGIN{FS=":";OFS="---"}{print $1,$7}'
root---/bin/bash