awk没有给出输出

时间:2013-10-26 19:27:16

标签: bash unix awk

7369|SMITH     |CLERK    |    7902|17-DEC-80|       800|          |        20               
7499|ALLEN     |SALESMAN |    7698|20-FEB-81|      1600|       300|        30               
7521|WARD      |SALESMAN |    7698|22-FEB-81|      1250|       500|        30               
7566|JONES     |MANAGER  |    7839|02-APR-81|      2975|          |        20               
7654|MARTIN    |SALESMAN |    7698|28-SEP-81|      1250|      1400|        30               
7698|BLAKE     |MANAGER  |    7839|01-MAY-81|      2850|          |        30               
7782|CLARK     |MANAGER  |    7839|09-JUN-81|      2450|          |        10               
7788|SCOTT     |ANALYST  |    7566|19-APR-87|      3000|          |        20               
7839|KING      |PRESIDENT|        |17-NOV-81|      5000|          |        10               
7844|TURNER    |SALESMAN |    7698|08-SEP-81|      1500|         0|        30               
7876|ADAMS     |CLERK    |    7788|23-MAY-87|      1100|          |        20               
7900|JAMES     |CLERK    |    7698|03-DEC-81|       950|          |        30               
7902|FORD      |ANALYST  |    7566|03-DEC-81|      3000|          |        20               
7934|MILLER    |CLERK    |    7782|23-JAN-82|      1300|          |        10    

awk '$4== "7698"'没有在输出中提供任何内容...... ???

2 个答案:

答案 0 :(得分:1)

考虑使用regex匹配而非精确匹配来消除空间问题。还提供适当的字段分隔符|

awk -F'\|' '$4~/7698/' file

答案 1 :(得分:0)

您可能忘了awk -F '\|',但您的行似乎也包含空格。