• ask编程--printf格式化输出/awk使用


    1. printf输出格式的使用

    格式:printf   ‘输出类型输出格式’   输出内容

    输出类型

    %s:输出字符串 %-10s:表示左对齐110字符内 

    %i:输出整型

    %m.nf:输出浮点数

     

    打印adada,并换行

     

    实验文件 %S

     

    提升

     

     

    注: 是制表符相当于tab

     

    print和printf的区别

    Print 不能使用 %s,%d/%C

    2. awk的使用

    awk格式: awk  ‘条件1{动作1} 条件2{动作2}’ 文件内容

    一般使用关系表达式作条件

    X> 10;  x<=10;  x==y;  !=  ;

    A~b 判断字符串A中是否能匹配字符串B

    A!~B 判断字符串A中是否不包含能匹配B表达式

    /字符串/

    BEGIN: awk的保留字,awk程序一开始时,尚未读取任何数据之前执BEGIN,只执行一次BEGIN后的动作

    END:awk程序处理完所有数据,即将结束时执行END,只执行一次END后的动作

    动作:格式化输入(print);流程控制语句

    注:正则表达式格式   awk /正则表达式/

     

     

    实验文件$0   $1-9

     

     

    :  print $0打印整行;print$1 打印当前第一域;print$1 打印当前第一域

    实验文件 加些固定字

    实验文件 awk -F

    指定:为分隔符,查询第一列 /etc/passwd文件

    awk  -F  : ‘{print $1 }’/etc/passwd

    查询最后一列  /etc/passwd文件

    awk  -F : ‘{print $DF }’/etc/passwd

    查询最后倒数第三列 /etc/passwd文件

    awk  -F : ‘{print $DF-3 }’/etc/passwd   

     

    实验文件 FS

    查看/etc/passwd 所有用户

     

    实验文件 >= && <=

    只查看test.txt文件第20到第30行的内容(企业面试)

     awk  { if(NR>=20 && NR<=30)  print $0}   test.txt

     

    实验文件 ~  /字符串/

    判断第六字段是否包含 SC 字符,有则打印学号$1,文件名为 student.txt

    awk  $6  ~  /SC/   {print $1}  student.txt

     

                                                                                                                              

    提升

    查询磁盘空间占分比

    df  -h | grep   /dev/sda3 | awk  ‘{print $5}’|cut -d  % -f

    统计/etc/passwd 账户人数

     

     

     

    当你的才华配不上你的野心,努力的时候到了!
  • 相关阅读:
    程序跳过UAC研究及实现思路(两种方法,现在可能都不行了)
    getch(),getche(),getchar()的区别
    命令行版扫雷(vc08)
    类成员函数指针的特殊之处(成员函数指针不是指针,内含一个结构体,需要存储更多的信息才能知道自己是否virtual函数)
    WCF与Web API 区别
    扩展方法库
    开源Dubbox
    AngularJs应用页面
    浅谈可扩展性框架:MEF
    AngularJs + ASP.NET MVC
  • 原文地址:https://www.cnblogs.com/xwdzj/p/13947867.html
Copyright © 2020-2023  润新知