Shell命令printf的用法及实例

一、printf的基本用法

printf命令是Linux下常见的输出命令,其可以将指定的字符串或变量输出到标准输出设备或文件中。printf命令输出的格式可以使用格式化字符串控制,从而实现精准的输出。

printf命令的基本用法如下:

printf format-string [arguments...]

其中,format-string是格式化字符串,arguments是需要输出的参数。printf命令会按照format-string的格式,将arguments中的参数逐一输出。

下面是一个简单的例子:

#!/bin/bash
name="Linux"
printf "Hello, %s!\n" $name

在上面的例子中,我们定义了一个变量name,其值为Linux。然后使用printf命令输出了一个字符串,其中%s表示一个字符串占位符,后面的$name表示实际的参数值。

执行上述脚本,会输出以下内容:

Hello, Linux!

二、printf的格式化字符串

printf命令中的格式化字符串可以包含一些转义符,用于控制输出的格式。下面列举一些常见的转义符:

  • %c:输出一个字符。
  • %s:输出一个字符串。
  • %d:输出一个十进制数。
  • %x:输出一个十六进制数。
  • %f:输出一个浮点数。
  • %e:使用科学计数法输出一个浮点数。
  • %o:输出一个八进制数。
  • %%:输出一个%号。

下面是一个使用格式化字符串的例子:

#!/bin/bash
name="Linux"
age=18
printf "My name is %s, and I'm %d years old.\n" $name $age

执行上述脚本,会输出以下内容:

My name is Linux, and I'm 18 years old.

三、printf的宽度和精度控制

printf命令中还可以通过以下方式控制宽度和精度:

  • %m.n:m为输出宽度,n为小数点后面的位数。
  • %-m.n:左对齐输出。

下面是一个使用宽度和精度控制的例子:

#!/bin/bash
name="Linux"
age=18
price=3.1415926
printf "My name is %10s, and I'm %d years old.\n" $name $age
printf "Price: %6.2f\n" $price

执行上述脚本,会输出以下内容:

My name is      Linux, and I'm 18 years old.
Price:   3.14

四、应用实例

printf命令在实际应用中十分常见,下面列举一些实际应用实例。

1、输出文件大小:

#!/bin/bash
filesize=$(du -h file.txt | awk '{print $1}')
printf "File size is: %s\n" $filesize

执行上述脚本,会输出以下内容:

File size is: 358M

2、输出脚本执行时间:

#!/bin/bash
start=$(date +%s)
# 一些耗时操作
end=$(date +%s)
printf "Script execution time: %d seconds.\n" $((end-start))

执行上述脚本,会输出以下内容:

Script execution time: 10 seconds.

3、输出系统信息:

#!/bin/bash
cpu=$(cat /proc/cpuinfo | grep -m 1 "model name" | awk -F':' '{print $2}')
memory=$(free -h | awk '/Mem/{print $2}')
disk=$(df -h | awk '/\/$/{print $3}')
printf "CPU: %s\nMemory: %s\nDisk: %s\n" $cpu $memory $disk

执行上述脚本,会输出以下内容:

CPU:  Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz 
Memory: 16G
Disk: 29G

五、总结

本文介绍了printf命令的基本用法、格式化字符串、宽度和精度控制以及一些实际应用实例。printf命令在Shell脚本中使用十分广泛,通过了解其基本用法和格式化字符串,可以提高脚本输出的精度和可读性,从而更好地完成脚本任务。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/201186.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-06 11:31
下一篇 2024-12-06 11:31

相关推荐

  • Python生成随机数的应用和实例

    本文将向您介绍如何使用Python生成50个60到100之间的随机数,并将列举使用随机数的几个实际应用场景。 一、生成随机数的代码示例 import random # 生成50个6…

    编程 2025-04-29
  • Shell脚本与Python脚本的区别

    本文将从多个方面对Shell脚本与Python脚本的区别做详细的阐述。 一、语法差异 Shell脚本和Python脚本的语法存在明显差异。 Shell脚本是一种基于字符命令行的语言…

    编程 2025-04-29
  • Git config命令用法介绍:用正确的邮箱保障开发工作

    本文将详细介绍如何使用git config命令配置Git的全局和本地用户信息,特别是如何正确使用用户邮箱,保障Git操作的正常进行。 一、git config命令介绍 Git中的每…

    编程 2025-04-29
  • Python命令大全及说明

    Python是一种高级编程语言,由Guido van Rossum于1989年底发明。它具有良好的语法结构和面向对象的编程思想,具有简洁、易读、易学的特点,是初学者以及专业开发人员…

    编程 2025-04-29
  • Python SSH 远程执行命令

    Python SSH 远程执行命令是指在一个服务器上执行远程另一个服务器上命令。如果你需要在本地机器上执行命令,或者在远程机器上执行本地命令,你都可以使用 SSH。在 Python…

    编程 2025-04-29
  • 剖析命令执行函数

    在编程开发过程中,命令执行函数是非常常见的一个概念。它是指接受一个命令字符串,并将其解析执行,返回相应的结果或错误信息的函数。本文将从多个方面对命令执行函数进行详细的阐述,包括其定…

    编程 2025-04-28
  • Shell嵌入式介绍及应用

    本文将介绍Shell嵌入式的概念、特点和应用,并针对嵌入式系统开发中的一些问题,给出相应的解决方案。 一、Shell嵌入式概念 Shell嵌入式是一种将Shell(命令行解释器)嵌…

    编程 2025-04-28
  • 如何在dolphinscheduler中运行chunjun任务实例

    本文将从多个方面对dolphinscheduler运行chunjun任务实例进行详细的阐述,包括准备工作、chunjun任务配置、运行结果等方面。 一、准备工作 在运行chunju…

    编程 2025-04-28
  • 如何使用Python执行Shell命令并获取执行过程信息

    本文将介绍如何使用Python执行Shell命令并获取执行过程信息。我们将从以下几个方面进行阐述: 一、执行Shell命令 Python内置的subprocess模块可以方便地执行…

    编程 2025-04-28
  • Python中获取用户输入命令的方法解析

    本文将从多个角度,分别介绍Python中获取用户输入命令的方法,希望能够对初学者有所帮助。 一、使用input()函数获取用户输入命令 input()是Python中用于获取用户输…

    编程 2025-04-27

发表回复

登录后才能评论