Linux基础教程(十九)Shell printf 命令:别再用echo傻傻输出了!Linux大神都在用的printf,让你的代码输出“骚”起来!

Shell脚本中使用printf格式化输出技巧

第一章:相遇:为什么是printf,而不是echo?

如果你刚接触Shell脚本,你认识的第一个输出命令大概率是echo。它简单、直接、奔放,就像学校里那个心直口快的阳光少年。你让他喊一声“Hello World”,他绝对不加半点修饰,大声喊出来:

echo "Hello World"

但当你步入脚本开发的“社会”,你会发现,这个世界需要的不仅仅是“喊出来”,更需要“优雅地、有格调地、精确地呈现出来”。这时,你遇到了printf

printf,这个名字就透露着一种专业范儿。“print formatted”,格式化打印。它不像echo那样天生自带换行符,它像一位严谨的钢琴师,每一个音符(字符)的落下都完全遵从你的指挥。你让它弹一个音符,它绝不会自作主张地加上休止符。

它的核心哲学是:我给你一个格式模板,你给我按照这个模板输出数据。

这种控制力,让printf成为了构建复杂、健壮、可移植脚本的不二之选。它几乎在所有环境和系统中都有一致的行为,而echo的各种衍生版本(BSD、GNU等)行为却略有不同,有时会让你掉进坑里。

所以,是时候深入了解这位深藏不露的高手了。

第二章:相知:printf的“语法武器库”

printf命令的基本语法看似复杂,实则规整:

printf FORMAT [ARGUMENT]...
  • FORMAT(格式字符串): 这是printf的灵魂所在。它包含两种类型的内容:
    1. 普通字符: 原样输出的文本。
    2. 格式转换符(Format Specifiers): 以百分号%开头的特殊序列,它像一个占位符,规定了后续参数如何被格式化输出。
  • ARGUMENT(参数): 这是填入格式转换符“坑位”里的“萝卜”。参数的数量和顺序必须与格式字符串中的转换符一一对应。

它的工作流程是这样的: printf读取格式字符串,遇到普通字符就直接输出,遇到%开头的转换符,就去下一个参数里找一个值,按照转换符规定的格式“化妆”后,再输出。所有内容输出完毕后,它不会自动添加换行符!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

值引力

持续创作,多谢支持!

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

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

打赏作者

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

抵扣说明:

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

余额充值