你的位置:首页 > 软件开发 > 操作系统 > Linux Shell系列教程之(八)Shell printf命令详解

Linux Shell系列教程之(八)Shell printf命令详解

发布时间:2016-06-08 12:00:12
本文是Linux Shell系列教程的第(八)篇,更多shell教程请看:Linux Shell系列教程在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell printf命令有了一个简略的介绍,本篇给大家详细介绍下Shell中的printf命 ...

本文是Linux Shell系列教程的第(八)篇,更多shell教程请看:Linux Shell系列教程

在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell printf命令有了一个简略的介绍,本篇给大家详细介绍下Shell中的printf命令。

Linux Shell系列教程之(八)Shell printf命令详解

一、Shell printf命令语法

printf format-string [arguments...]

format-string为描述格式规格的字符串,用来描述输出的排列方式,最好为此字符串加上引号。此字符串包含按字面显示的字符以及格式声明,格式声明时特殊的占位符,用来描述如何显示相应的参数。

arguments是与格式声明相对应的参数列表,例如一系列的字符串或变量值。

格式声明由两部分组成:百分比符号(%)和指示符。

最常用的格式指示符有两个,%s用于字符串,而%d用于十进制整数。

格式字符串中,一般字符会按字面显示。转义序列则像echo那样,解释后再输出成相应的字符。格式声明以%符号开头,并以定义的字母集中的一个来结束,用来控制相应参数的输出。

二、Shell printf命令转义序列

Shell printf命令的转义序列如下表所示

序列 
\a警告字符,通常为ASCII的BEL字符
\b后退
\c不显示输出结果中任何结尾的换行字符,而且任何留在参数里的字符、任何接下来的参数以及任何留在格式字符串中的字符都被忽略。
\f换页
\n换行
\r回车
\t水平制表符
\v垂直制表符
\\反斜杠字符

三、Shell printf命令格式指示符

Shell printf命令的格式指示符如下表所示

符号说明
%cASCII字符.显示相对应参数的第一个字符
%d,%i十进制整数
%E浮点格式([-d].precisionE [+-dd])
%e浮点格式([-d].precisione [+-dd])
%g%e或%f转换,看哪一个较短,则删除结尾的零
%G%E或%f转换,看哪一个较短,则删除结尾的零
%s字符串
%u不带正负号的十进制值
%x不带正负号的十六进制.使用a至f表示10至15
%%字面意义的%
%X不带正负号的十六进制.使用A至F表示10至15

 

四、Shell printf命令精度格式指示符

Shell printf命令中精度格式指示符入下表所示

符号含义
%d,%i,%o,%u,%x,%X要打印的最小位数.当值的位数少于此数字时,会在前面补零.默认精度为1
%e,%E要打印的最小位数.当值的位数少于此数字时,会在小数点后面补零,默认为精度为6.精度为0则表示不显示小数点小数点右边的位数
%f小数点右边的位数
%g,%G有效位数的最大数目
%s

要打印字符的最大数目

使用举例:

printf "%.5d\n" 15输出:00015printf "%.10s\n" "a very long string"输出:a very lonprintf "%.2f\n" 123.4567输出:123.46

原标题:Linux Shell系列教程之(八)Shell printf命令详解

关键词:linux

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录