刘冲 于 2010-03-02 17:30:19发表:
就是,cat输出的数据依次通过三个grep过滤,然后使用awk处理,再用more查看结果. grep的看看help文档,awk的比较麻烦,看下相关学习资料吧. 有本书叫"UNIX shell范例精解(第4版)"很不错,你买或者下载个看看. 下载的话,这里有个:http://www.verycd.com/topics/2765325/
mengjie213 于 2010-03-02 13:19:00发表:
客气。共同学习哈!
goodfans 于 2010-03-02 13:16:55发表:
谢谢,受教了!
mengjie213 于 2010-03-02 13:02:46发表:
#grep --help 你会看到 -v 的意思 -v, --invert-match select non-matching lines 就是不匹配的,,,就是说不含有这些词的行才是需要的 nologin halt shutdown awk -F":" '{ print $1"|"$3"|"$4 }' 这个条件是说之显示 满足之前条件行的 一“:” 为分割的第1 ,3,4列。
mengjie213 于 2010-03-02 12:51:25发表:
cat 查看文件 /etc/passwd ,“|”是管道, “|”之前的语句的输出作为之后的语句的输入。这样一层一层的 grep 过滤,最后筛选出你要的结果。 然后awk -F":" '{ print $1"|"$3"|"$4 } 只显示相应的列,最后more 一下,会分屏显示(输出很多时有用)。
mengjie213 于 2010-03-02 12:45:57发表:
你要是想学,可以这样分别执行: cat /etc/passwd cat /etc/passwd|grep -v nologin cat /etc/passwd|grep -v nologin|grep -v halt cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" '{ print $1"|"$3"|"$4 }'
刘冲 于 2010-03-02 17:30:19发表:
就是,cat输出的数据依次通过三个grep过滤,然后使用awk处理,再用more查看结果.
grep的看看help文档,awk的比较麻烦,看下相关学习资料吧.
有本书叫"UNIX shell范例精解(第4版)"很不错,你买或者下载个看看.
下载的话,这里有个:http://www.verycd.com/topics/2765325/
mengjie213 于 2010-03-02 13:19:00发表:
客气。共同学习哈!
goodfans 于 2010-03-02 13:16:55发表:
谢谢,受教了!
mengjie213 于 2010-03-02 13:02:46发表:
#grep --help
你会看到 -v 的意思 -v, --invert-match select non-matching lines
就是不匹配的,,,就是说不含有这些词的行才是需要的 nologin halt shutdown
awk -F":" '{ print $1"|"$3"|"$4 }' 这个条件是说之显示 满足之前条件行的 一“:” 为分割的第1 ,3,4列。
mengjie213 于 2010-03-02 12:51:25发表:
cat 查看文件 /etc/passwd ,“|”是管道, “|”之前的语句的输出作为之后的语句的输入。这样一层一层的 grep 过滤,最后筛选出你要的结果。 然后awk -F":" '{ print $1"|"$3"|"$4 } 只显示相应的列,最后more 一下,会分屏显示(输出很多时有用)。
mengjie213 于 2010-03-02 12:45:57发表:
你要是想学,可以这样分别执行:
cat /etc/passwd
cat /etc/passwd|grep -v nologin
cat /etc/passwd|grep -v nologin|grep -v halt
cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown
cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" '{ print $1"|"$3"|"$4 }'