printf格式化输出命令
printf格式化命令:printf ‘输出类型输出格式‘(也可以用双引号) 输出内容
输出类型:
%ns:输出字符串,数字n代表指定输出几个字符,当给定内容大于指定n时n不生效
%ni:输出整数,输出的为数字且占位为n,当给定内容大于指定n时n不生效
printf ‘%5i‘ ‘123‘ 输出“ 123”(123前面有两个空格,保证输出占位为5)
printf ‘%-5i‘ ‘123‘ 输出“123 ”(123后面有两个空格,保证输出占位为5)
printf ‘%05i‘ ‘123‘ 输出“00123”(123前面有两个0,保证输出占位为5)
%m.nf:输出浮点数,数字m和n代表指定输出的整数位和小数位一共占位为m并且小数位为n,如:%6.2f代表一共输出占位为6,其中2位是小数,那么整数位就是6位减去2位小数位再减去一个小数点的占位,即为3,整数位不满三位则从前面填充空格。
输出格式:
\a:输出警告音
\b:输出退格键(向左删除键)
\f:清除屏幕
:换行
\r:回车
\t:水平输出退格键(Tab键)
\v:垂直制表符,让‘\v’后面的字符从下一行开始输出,且开始的列数为“\v”前一个字符所在列后面一列。
printf命令后面的输出内容不能直接写文档名(不能读取文档内容,只会把文档名当作字符串输出),也不能使用管道符,只能用printf "%s" $(cat /etc/passwd)的格式输出指定文档的内容,而且输出的内容是不会换行的,是一整行没有任何格式的输出。
printf "%s %s%s" 1 2 3 4 5 6会输出:
1 23
4 56
printf命令在系统之中直接使用的几率不大,因为很多输出命令如cat都是自带了格式,输出很方便,printf主要是用在awk命令之中