zoukankan      html  css  js  c++  java
  • linux shell 中 printf 与 echo的区别

         echo

      echo是非常常用的shell命令。参数如下:

    • -e:打开反斜杠字符backslash-escaped的解析,即对/n,/t等字符进行解析,而不视之为两个字符
    • -E:关闭反斜杠字符的解析,/n作为两个字符,这是系统缺省模式
    • -n:删除最后的换行

    /a : 发出警告铃音(ALERT or CTRL-G (bell)) 
    /b : 退格(BACKSPACE or CTRL-H ) 
    /c : 删除最后的字符及最后的换行(Omit final NEWLINE ) 
    /e : 删除后面的一个字符(Escape character (same as /E) ) 
    /E : 同上(Escape character) 
    /f : 换页符,在某些现实中会清屏,有些会换行(FORMFEED or CTRL-L ) 
    /n : 换行(NEWLINE (not at end of command) or CTRL-J ) 
    /r : 从行头开始,和换行不一样,仍在本行(RETURN (ENTER) or CTRL-M ) 
    /t : tab键(TAB or CTRL-I ) 
    /v : 竖直tab,和/f一样,显示不同机器有所不一样,通常会引起换行VERTICAL TAB or CTRL-K 
    /n : 在cygwin中使用/65,无法正确显示'A’但是下面两种方法否可以显示。ASCII character with octal (base-8) value n, where n is 1 to 3 digits 
    /0nnn : 用8进制的值表示一个字符,例如/0101,即65,表示字符’A’(The eight-bit character whose value is the octal (base-8) value nnn where nnn is 1 to 3 digits ) 
    /xHH : 用16进制的值表示一个字符,例如/x41,即65,表示字符’A’The eight-bit character whose value is the hexadecimal (base-16) value HH (one or two digits) 

         printf

    printf和C语言的使用方式类似。和echo不一样,它不会在最后自动加上换行,需要写入命令中。例如printf "Hello, world/n"。printf的命令格式如下: 

    printf format-string [arguments]

    %c:ASCII字符,如果参数给出字符串,则打印第一个字符 
    %d:10进制整数 
    %i:同%d 
    %e:浮点格式([-]d.精度[+-]dd) 
    %E:浮点格式([-]d.精度E[+-]dd) 
    %f:浮点格式([-]ddd.precision) 
    %g:%e或者%f的转换,如果后尾为0,则删除它们 
    %G:%E或者%f的转换,如果后尾为0,则删除它们 
    %o:8进制 
    %s:字符串 
    %u:非零正整数 
    %x:十六进制 
    %X:非零正数,16进制,使用A-F表示10-15 
    %%:表示字符"%"

  • 相关阅读:
    ORACLE之常用FAQ V1.0二(构架系统) (1)
    如何快速杀去世占用过多本钱(CPU,内存)的数据库历程
    Eclipse快捷键大全
    (收藏)STL MAP 详解
    怎么在安装目录下创建一个文件
    MFC自绘属性的总结
    文件夹总结
    公元纪年转换为干支纪年
    重载运算符operator
    VS2005快捷键大全
  • 原文地址:https://www.cnblogs.com/vagabond/p/4312047.html
Copyright © 2011-2022 走看看