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

相关推荐

  • arpaname命令 – IP地址转换为对应的ARPA名称

    arpaname命令的作用是可以转换IP地址(IPv4和IPv6)到相应的IN-ADDR.ARPA或IP6.ARPA名称。 由于在域名系统中,一个IP地址可以对应多个域名,因此从I…

    Linux命令 2021年3月18日
  • ip命令 – 显示与操作路由

    ip命令用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。 语法格式:ip [参数] 常用参数: -s 输出更详细的信息 -…

    Linux命令 2021年3月19日
  • mingetty命令 – 登入程序

    mingetty命令是精简版的getty。 mingetty适用于本机上的登入程序。 语法格式:mingetty [参数] 常用参数: –long-hostname 显…

    Linux命令 2021年3月19日
  • seq命令 – 打印数字序列

    seq命令用于以指定增量从首数开始打印数字到尾数,即产生从某个数到另外一个数之间的所有整数,并且可以对整数的格式、宽度、分割符号进行控制。 语法格式: seq [参数] 常用参数:…

    Linux命令 2021年3月18日
  • e2fsck命令 – 检查使用 Linux ext2档案系统的partition是否正常工作

    e2fsck命令用于检查使用 Linux ext2 档案系统的 partition 是否正常工作。 e2fsck命令可以检查ext2、ext3、ext4文件系统,如果系统已经挂载了…

    Linux命令 2021年3月19日
  • squid命令 – 代理服务器守护进程

    squid命令是使用最广泛的代理服务器软件,可以节省网络带宽,提高网站的访问速度,它对服务器硬件的内存要求比较高。 它支持FTP、Gopher和HTTP协议的数据对象。 语法格式:…

    Linux命令 2021年3月19日
  • mount命令 – 文件系统挂载

    mount命令用于加载文件系统到指定的加载点。此命令的最常用于挂载cdrom,使我们可以访问cdrom中的数据,因为你将光盘插入cdrom中,Linux并不会自动挂载,必须使用Li…

    Linux命令 2021年3月18日
  • hdparm命令 – 显示与设定硬盘参数

    hdparm命令用于检测,显示与设定IDE或SCSI硬盘的参数。 语法格式:hdparm [参数] 常用参数: -a 设定读取文件时,预先存入块区的分区数 -f 将内存缓冲区的数据…

    Linux命令 2021年3月19日
  • rmmod命令 – 删除模块

    rmmod即“remove module”的简称,rmmod命令用于删除模块。 执行rmmod命令,可删除不需要的模块。Linux操作系统的核心具有模块化的特性,因此在编译核心时,…

    Linux命令 2021年3月18日
  • ss命令 – 显示活动套接字信息

    ss是Socket Statistics的缩写。ss命令用来显示处于活动状态的套接字信息。它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连…

    Linux命令 2021年3月19日