- 浏览: 50420 次
- 性别:
文章分类
- 全部博客 (103)
- 一致性哈希算法 (1)
- 云计算 (2)
- Cassandra学习 (2)
- Java网络通信与笔记 (14)
- ZooKeeper学习 (1)
- HBase学习 (1)
- Sqoop学习 (1)
- Java网页开发之 (2)
- Java网络通信框架 (5)
- (memcached)分布式内存对象缓存系统 (1)
- Redis学习 (5)
- Shell学习 (14)
- Linux学习 (10)
- MySQL优化 (17)
- C++ (7)
- HTML5 (5)
- Android学习 (5)
- 网络 (2)
- Node.js (1)
- D3.js (1)
- R语言学习 (3)
- Spark (1)
- CAN协议 (2)
- 解决方案 (0)
最新评论
printf 命令用于格式化输出, 是echo命令的增强版。它是C语言printf()库函数的一个有限的变形,并且在语法上有些不同。
注意:printf 由 POSIX 标准所定义,移植性要比 echo 好。
如同 echo 命令,printf 命令也可以输出简单的字符串:
printf 不像 echo 那样会自动换行,必须显式添加换行符(\n)。
printf 命令的语法:
printf format-string [arguments...]
format-string 为格式控制字符串,arguments 为参数列表。
printf()在C语言入门教程中已经讲到,功能和用法与 printf 命令类似,请查看:C语言格式输出函数printf()详解
这里仅说明与C语言printf()函数的不同:
printf 命令不用加括号
format-string 可以没有引号,但最好加上,单引号双引号均可。
参数多于格式控制符(%)时,format-string 可以重用,可以将所有参数都转换。
arguments 使用空格分隔,不用逗号。
请看下面的例子:
注意,根据POSIX标准,浮点格式%e、%E、%f、%g与%G是“不需要被支持”。这是因为awk支持浮点预算,且有它自己的printf语句。这样Shell程序中需要将浮点数值进行格式化的打印时,可使用小型的awk程序实现。然而,内建于bash、ksh93和zsh中的printf命令都支持浮点格式。
注意:printf 由 POSIX 标准所定义,移植性要比 echo 好。
如同 echo 命令,printf 命令也可以输出简单的字符串:
$printf "Hello, Shell\n" Hello, Shell $
printf 不像 echo 那样会自动换行,必须显式添加换行符(\n)。
printf 命令的语法:
printf format-string [arguments...]
format-string 为格式控制字符串,arguments 为参数列表。
printf()在C语言入门教程中已经讲到,功能和用法与 printf 命令类似,请查看:C语言格式输出函数printf()详解
这里仅说明与C语言printf()函数的不同:
printf 命令不用加括号
format-string 可以没有引号,但最好加上,单引号双引号均可。
参数多于格式控制符(%)时,format-string 可以重用,可以将所有参数都转换。
arguments 使用空格分隔,不用逗号。
请看下面的例子:
# format-string为双引号 $ printf "%d %s\n" 1 "abc" 1 abc # 单引号与双引号效果一样 $ printf '%d %s\n' 1 "abc" 1 abc # 没有引号也可以输出 $ printf %s abcdef abcdef # 格式只指定了一个参数,但多出的参数仍然会按照该格式输出,format-string 被重用 $ printf %s abc def abcdef $ printf "%s\n" abc def abc def $ printf "%s %s %s\n" a b c d e f g h i j a b c d e f g h i j如果没有 arguments,那么 %s 用NULL代替,%d 用 0 代替 $ printf "%s and %d \n" and 0 # 如果以 %d 的格式来显示字符串,那么会有警告,提示无效的数字,此时默认置为 0 $ printf "The first program always prints'%s,%d\n'" Hello Shell -bash: printf: Shell: invalid number The first program always prints 'Hello,0' $
注意,根据POSIX标准,浮点格式%e、%E、%f、%g与%G是“不需要被支持”。这是因为awk支持浮点预算,且有它自己的printf语句。这样Shell程序中需要将浮点数值进行格式化的打印时,可使用小型的awk程序实现。然而,内建于bash、ksh93和zsh中的printf命令都支持浮点格式。
发表评论
-
Shell文件包含
2015-09-05 14:20 0像其他语言一样,Shell 也可以包含外部脚本,将外部脚本的内 ... -
Shell输入输出重定向:Shell Here Document,/dev/null文件
2015-09-05 14:16 0Unix 命令默认从标准输 ... -
Shell函数参数
2015-09-05 14:10 0在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 ... -
Shell函数:Shell函数返回值、删除函数、在终端调用函数
2015-09-05 14:07 0函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰 ... -
Shell break和continue命令
2015-09-05 14:05 0在循环过程中,有时候需要在未达到循环结束条件时强制跳出循环,像 ... -
Shell until循环
2015-09-05 14:03 0until 循环执行一系列命令直至条件为 true 时停止。u ... -
Shell while循环
2015-09-05 14:00 0while循环用于不断执行一系列命令,也用于从输入文件中读取数 ... -
Shell for循环
2015-09-08 22:58 468与其他编程语言类似,Shell支持for循环。 for循环一 ... -
Shell case esac语句
2015-09-05 13:57 0case ... esac 与其他语言中的 switch .. ... -
Shell if else语句
2015-09-05 13:54 0if 语句通过关系运算符判断表达式的真假来决定执行哪个分支。S ... -
Shell echo命令
2015-09-13 16:00 1024echo是Shell的一个内部指令,用于在屏幕上打印出指定的字 ... -
Shell数组:shell数组的定义、数组长度
2015-09-12 10:17 603Shell在编程方面比Windows批处理强大很多,无论是在循 ... -
Shell字符串
2015-09-11 22:00 303字符串是shell编程中最常用最有用的数据类型(除了数字和字符 ... -
Shell注释
2015-09-11 22:00 374以“#”开头的行就是注释,会被解释器忽略。 sh里没有多行注 ... -
Shell运算符:Shell算数运算符、关系运算符、布尔运算符、字符串运算符等
2015-09-06 20:19 455Bash 支持很多运算符, ... -
Shell替换:Shell变量替换,命令替换,转义字符
2015-09-06 20:18 851如果表达式中包含特殊 ... -
Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
2015-09-06 20:18 365前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其 ... -
Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
2015-09-05 13:09 608Shell支持自定义变量。 定义变量 定义变量时,变量名不加 ... -
第一个Shell脚本
2015-09-05 13:02 303打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell ... -
Shell脚本语言与编译型语言的差异
2015-09-05 12:58 446大体上,可以将程序设 ...
相关推荐
printf 命令用于格式化输出, 是echo命令的增强版。它是C语言printf()库函数的一个有限的变形,并且在语法上有些不同。 注意:printf 由 POSIX 标准所定义,移植性要比 echo 好。 如同 echo 命令,printf 命令也可以...
Shellprintf命令:格式化输出语句 **printf命令**: - `printf "%s\n" "Hello, World!"` 格式化输出。 #### 15. Shellifelse语句 **条件判断**: - `if [ condition ]; then ... else ... fi` 进行条件判断。 #...
* Shell printf 命令是指在 Shell 中格式化输出字符串的命令 * Shell printf 命令可以使用格式字符串来实现格式化输出 Shell if else 语句: * Shell if else 语句是指在 Shell 中的条件语句 * Shell if else ...
* printf:用于格式化输出文本信息。 * read:用于读取用户输入信息。 * exit:用于退出shell。 三、运算语句 C shell支持多种运算语句,包括: * 赋值语句:用于将值赋给变量。 * 算术语句:用于进行算术运算。 ...
- `printf`命令:格式化输出,比`echo`更强大,可以处理复杂的格式化字符串。 - `echo`命令:简单地打印字符串或变量到标准输出。 - `args.sh`可能涉及参数处理,脚本通常通过`$1`、`$2`等访问传递的命令行参数,`$#...
- `>`:将命令输出重定向到文件。 - `<`:从文件读取输入。 - `|`:管道符,将一个命令的输出作为另一个命令的输入。 5. **控制结构**: - `if...then...else...fi`:条件语句。 - `for`:循环语句,常用于...
echo 命令可以用来输出变量的值或字符串,而 printf 命令可以用来输出格式化的字符串。 test 命令是 Shell 编程中的一种基本命令。test 命令可以用来判断条件是否成立,例如:if test -f file.txt。 流程控制是 ...
- **第4章 - Shell学习第四天**:介绍更高级的输出方法,如使用printf命令进行格式化输出。 - **第5章 - Shell学习第五天**:讲解输入/输出重定向的高级用法,包括文件描述符、重定向到多个文件等。 在后续章节中,...
### Linux Shell 简明教程知识点汇总 #### 一、Linux操作系统与Shell脚本...此外,还学习了如何使用`declare`和`printf`等内置命令进行更复杂的变量操作和格式化输出。这些基础知识对于编写高效的Shell脚本至关重要。
- **printf**:更灵活的输出命令,支持格式化输出,类似于C语言的`printf`函数。 - **HERE DOCUMENT** (`):用于输出多行内容,常用于配置文件的生成。 - **交互式命令**:通过`read`命令,可以从用户那里接收...
Shell脚本学习与总结 shell脚本学习是 Linux 操作系统中非常重要的一部分,它可以帮助用户自动化重复性任务,提高工作效率。在这篇文章中,我们将对 shell ...3. printf 命令:printf 命令用于输出格式化的字符串。
18.3.14 null:命令用法 167 18.3.15 测试目录创建结果 168 18.3.16 另一个拷贝实例 169 18.3.17 多个if语句 169 18.3.18 测试和设置环境变量 169 18.3.19 检测最后命令状态 170 18.3.20 增加和检测整数值 171 18.3....
`printf`类似于C语言中的`printf`函数,提供了一种格式化输出的方式,支持更复杂的输出格式控制。 `set`命令有多种用途,其中包括设置或取消shell选项。在示例中,`set -a`会使得之后声明的所有变量自动成为环境...
8. **文本处理工具**:熟悉grep、sed、awk等强大的文本处理命令,用于搜索、替换、格式化文本。 9. **脚本调试**:学习如何使用set -x、set -v进行脚本的调试,以及使用echo、printf命令进行输出调试信息。 10. **...
3. 文本处理:`cat`显示文件内容,`more`或`less`分页查看文件,`echo`输出字符串,`printf`格式化输出。 4. 进程管理:`ps`查看当前进程,`kill`发送信号结束进程,`nohup`让命令在后台持续运行。 5. 环境设置:`...
15. **shell内置命令**:如`read`用于从标准输入读取一行,`echo`打印字符串,`printf`格式化输出,`source`或`.`用于在当前shell环境中执行文件内容。 16. **历史记录**:`history`命令列出历史命令,`!n`或`!-n`...
4. **控制台输出**:掌握echo和printf命令,用于在终端打印文本和格式化输出。 **第二部分:Shell语法与结构** 1. **注释**:了解如何使用#进行单行注释,多行注释的方法。 2. **条件语句**:学习if、elif、else...
- 字符转换和压缩的实际应用:通过实例了解tr在文本格式化、编码转换等方面的应用。 这些工具在日常系统管理和自动化任务中发挥着关键作用。通过深入学习和实践,你可以编写出强大的shell脚本来处理各种复杂的数据...