•awk FS的指定
- awk之FS的指定
- file:
- FAN1 | 11h | ok | 160.96 | 11139 RPM
- FAN2 | 12h | ok | 160.96 | RPM
- FAN3 | 13h | ok | 160.96 | 10763 RPM
- FAN4 | 14h | ok | 160.96 | 10998 RPM
- FAN5 | 15h | ok | 160.96 | 11515 RPM
- [code]
- awk -F '[ ]' '{print $9}' file
- awk -F '[ ]' '($9>11000)' file
- #awk指定一个空格为分隔符
- awk -F '[ ]'
- 1.使用空白字符作为分隔字段
- 将FS设置为一个空格,这种情况下,记录的前导空白和结尾
- 空白(空格或者制表符)将被忽略。FS默认为一个空格
- awk -F " "
- 指定一个空格,开头末尾空白被忽略
- awk '{}' file
- 2.使用单个字符
- awk -F ","
- awk 'BEGIN{FS=","}'
- 3.设置了不止一个字符作为字段分隔符,将作为一个正则表达式来解释
- 分割符与正则表达式匹配的最左边最长的非空的不重叠的子串
- #指定一个制表符
- FS="\t"
- #指定一个或者多个制表符
- FS="\t+"
- 使用正则表达式指定几个字符作为分隔符
- FS="[':\t]"
- 4.每个字符都是一个域
- FS=""
- $ echo ’ a b c d’ | awk ’{ print; $2 = $2; print }’
- a b c d
- a b c d
- 第一次原样输出
- 第二次$2的指派重组了$0,只是将$1至$NF组合起来成为新的$0
- 所以开头空格被忽略