bash之printf (分享)
本帖最后由 yinyuemi 于 2011-04-13 08:32 编辑
前几天看到一篇英文的关于bash的printf使用方法,觉得不错,简单的翻译了一下,给大家分享一下,如果错误的地方,请指正,谢谢! (在多位大侠的指导下,终于会发表情啦!)
-----这里讲的printf指的是bash的内建命令(bash-builtin),而不是C函数中的printf(),不过它所实现的功能和printf()函数是非常类似的,可以说是echo命令的一个继承和发展,更加接近POSIX标准。
-----使用语法:
- printf <FORMAT> <ARGUMENTS...>
复制代码先举个例子:
- SURNAME=china
- LASTNAME=unix
- printf "Surname: %s\nName: %s\n" "$SURNAME" "$LASTNAME"
- Surname: china
- Name: unix
复制代码如果你想把输出作为一个变量,也很简单,只要使用 –v var的形式就可以。
- printf -v var "%sxxx"
- echo $var
- xxx
复制代码-----FORMAT 部分内容很多放到后,先说下ARGUMENTS,
一般情况下,ARGUMENT是一个字符(STRING),当然也可以是数值(字),不过有特定的格式,如下(为了尊重原“注”,这里给出英文注释):
Number-Format | Description |
N | A normal decimal number |
0N | An octal number |
0xN | A hexadecimal number |
0XN | A hexadecimal number |
"X | (a literal double-quote infront of a character): interpreted as number (underlying codeset) don't forget escaping |
'X | (a literal single-quote infront of a character): interpreted as number (underlying codeset) don't forget escaping |
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
先谢谢了...
正准备看下printf的.
不错,不过低版本的bash一些功能不支持
发表情那茬,有我的功劳吗?
顶起来 呵呵 学习了 谢谢SS分享
回复 6# xiaopan3322
有!