Linux学习日记 —— 11.2.2 Shell编程-字符截取命令-printf命令

严格来说,printf命令并不是字符提取命令。

命令格式:printf ‘输出类型输出格式’ 要输出的内容
作用:把要输出的内容,按照指定的格式匹配输出。
注意:printf不能直接输出文件中的内容,也不支持管道符。

输出类型:
%ns:输出字符串。n是数字指代输出几个字符
%ni:输出整数。n是数字指代输出几个数字
%m.nf:输出浮点数。m和n是数字,指代输出的整数位数和小数位数。如%8.2f代表共输出8位数,其中2位是小数,6位是整数。

输出格式:
\a: 输出警告声音
\b: 输出退格键,即backspace键
\f: 清除屏幕
\n: 换行
\r: 回车,即enter键
\t: 水平输出退格键,即tab键
\v: 垂直输出退格键,即tab键

示例:
[root@localhost ~]# printf %s 1 2 3 4 5 6
123456

[root@localhost ~]# printf %s%s%s 1 2 3 4 5 6
%s%s123456

[root@localhost ~]# printf '%s%s%s\n' 1 2 3 4 5 
12345

[root@localhost ~]# printf '%sa%s%s\n' 1 2 3 4 5 6
1a234a56

[root@localhost ~]# printf '%s%s%s\n' "1 2 3 4 5 6"
1 2 3 
4 5 6

[root@localhost ~]# printf '%5s\n' 1 2 3 
1
2
3

[root@localhost ~]# printf '%5s\n' "123456"
123456

[root@localhost ~]# printf '%5s\n' "123"
  123


[root@localhost ~]# printf '%8i\n' 3
       3

[root@localhost ~]# printf '%5.2f\n' 3
 3.00

注意:输出格式%s必须用引号括起来(单引号或双引号都行)。
printf 输出文本内容:
[root@localhost ~]# vi student.txt
ID   Name    PHP   Linux   MySQL  Ave
1   Liming   82     95      86    87.5
2   Sc       74     96      87    85.5
3   Gao      99     83      93    91.5

[root@localhost ~]# printf '%s' $(cat student.txt)
#不调整输出格式

[root@localhost ~]# printf '%s\t %s\t %s\t %s\t %s\t %s\n' $(cat student.txt)
#调整格式输出
#直接连续输出所有文本

说明:
在awk命令的输出中支持print和printf。

  • print会在每个输出之后,自动加上一个换行符。(Linux默认没有print命令)。
  • printf是以指定的标准格式输出,并不会自动加入换行符,一般都是手工加\n。

awk中使用的print或printf并不是Linux的命令,它们是awk中自带的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟敛寒林o

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值