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=""

  1. </pre><pre name="code"class="cpp">$ echo ’ a b c d’ | awk ’{ print; $2 = $2; print }’
  2. a b c d
  3. a b c d
  4. 第一次原样输出
  5. 第二次$2的指派重组了$0,只是将$1至$NF组合起来成为新的$0
  6. 所以开头空格被忽略

你可能感兴趣的:(c,正则表达式,File)