printf 命令 – shell 输出

printf 命令模仿 C 程序库(library)里的 printf() 程序。

printf 使用引用文本或空格分隔的参数,外面可以在printf中使用格式化字符串,还可以制定字符串的宽度、左右对齐方式等。默认printf不会像 echo 自动添加换行符,我们可以手动添加 \n。

语法格式: printf [格式控制字符串] [参数]

常用参数

\a 警告字符,通常为ASCII的BEL字符
\n 换行
\r 回车
\0ddd 表示1到3位的八进制值字符
\ddd 表示1到3位数八进制值的字符。仅在格式字符串中有效

参考实例

字符串输出:

[root@xtuos.com ~]# printf "Hello, Shell\n"
Hello, Shell 

接下来,我来用一个脚本来体现printf的强大功能:

[root@xtuos.com ~]#
printf "%-10s %-8s %-4s\n" 姓名 性别 体重kg
printf "%-10s %-8s %-4.2f\n" 郭靖 男 66.1234
printf "%-10s %-8s %-4.2f\n" 杨过 男 48.6543
printf "%-10s %-8s %-4.2f\n" 郭芙 女 47.9876 

执行脚本,输出结果如下所示:

[root@xtuos.com ~]#
姓名     性别   体重kg
郭靖     男      66.12
杨过     男      48.65
郭芙     女      47.99 

%s %c %d %f都是格式替代符

%-10s 指一个宽度为10个字符(-表示左对齐,没有则表示右对齐),任何字符都会被显示在10个字符宽的字符内,如果不足则自动以空格填充,超过也会将内容全部显示出来。

%-4.2f 指格式化为小数,其中.2指保留2位小数。

格式控制字符串为双引号:

[root@xtuos.com ~]# printf "%d %s\n" 1 "abc" 

格式控制字符串为单引号:

[root@xtuos.com ~]# printf '%d %s\n' 1 "abc"  

没有引号也可以输出:

[root@xtuos.com ~]# printf %s abcdef 

原创文章,作者:云东方,如若转载,请注明出处:https://www.yundongfang.com/1498.html

(0)
上一篇 2021年3月18日 下午6:32
下一篇 2021年3月18日 下午6:38

相关推荐

  • ifdown命令 – 禁用网络接口

    ifdown命令用于禁用指定的网络接口。该命令会去读取/etc/sysconfig/network-scripts/目录下的相关网络接口的配置文件,并根据配置文件的内容来关闭该网络…

    Linux命令 2021年3月19日
  • uux命令 – 在远端的UUCP主机上执行命令

    uux可以在远端的UUCP主机上执行指令或是执行本机上的命令,但在执行时会使用远端电脑的文件。 uux命令是一种基本联网实用程序,在指定的基于 UNIX 的系统上运行指定的命令。同…

    Linux命令 2021年3月19日
  • fdformat命令 – 对指定的软碟机装置进行低阶格式化

    fdformat命令用于对指定的软碟机装置进行低阶格式化。 使用这个指令对软碟格式化的时候,最好指定像是下面的装置: /dev/fd0d360 磁碟机 A: ,磁片为 360KB …

    Linux命令 2021年3月19日
  • vgimport命令 – 导入卷组

    vgimport命令的作用是可以导入卷组。 从不同的系统移动导出物理卷之后,vgimport命令配合相应map文件可以让系统再次认出导出的卷组。 语法格式:vgimport [参数…

    Linux命令 2021年3月19日
  • showmount命令 – 显示NFS服务器的加载信息

    showmount命令查询“mount”守护进程,以显示NFS服务器的加载信息。 语法格式: showmount [参数] 常用参数: -d 仅显示已被NFS客户端加载的目录 -e…

    Linux命令 2021年3月19日
  • history命令 – 显示与操纵历史命令

    history命令用于显示用户以前执行过的历史命令,并且能对历史命令进行追加和删除等操作。 如果你经常使用Linux命令,那么使用history命令可以有效地提升你的效率。 语法格…

    Linux命令 2021年3月18日
  • nntpget命令 – 下载新闻组文章

    执行nntpget命令将从指定的新闻组服务器下载文章。nntpget命令会从标准输入设备读取信息识别码,而下载的新闻文章则呈现到标准输出设备。 语法格式:nntpget [参数] …

    Linux命令 2021年3月18日
  • vmkping – 网络故障排除命令

    Vmkping是VMware的Ping命令的特定版本。它使用的IP VMkernel去Ping另一个ESX主机的VMkernel端口,这意味着你可以通过vMotion网络而非管理网…

    Linux命令 2021年3月18日
  • talk命令 – 用于与其他使用者对谈

    talk命令允许同一主机或不同主机上的两个用户进行交互式对话。talk命令在每个用户的显示器上打开发送窗口和接收窗口。这样每个用户在talk命令显示另一个用户正在输入的内容时能够在…

    Linux命令 2021年3月19日
  • partprobe命令 – 重读分区表

    partprobe命令用于重读分区表,将磁盘分区表变化信息通知内核,请求操作系统重新加载分区表。如果删除文件后,仍然提示占用空间,可以用partprobe在不重启的情况下重读分区 …

    Linux命令 2021年3月19日