Shell学习【printf与echo】
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,Shell printf命令echo命令主要用于字符串的输出,可以是不要引号但不支持转义,双引号可用于转义字符,printf命令也是输出命令但是要比echo 的移植性好,制定字符串的宽度,左右对其方式
千家信息网最后更新 2025年12月02日Shell学习【printf与echo】printf格式化
Shell printf命令
echo命令主要用于字符串的输出,可以是不要引号但不支持转义,双引号可用于转义字符,
printf命令也是输出命令但是要比echo 的移植性好,制定字符串的宽度,左右对其方式;可以格式控制字符,指定参数列表,参数空格区分,语法结构:
printf format-string [arguments...]
#!/bin/bash#author:zrc#自动换行的对比echo -e "OK! \n" # -e 开启转义 \n 开启换行echo "is a echo"echo "----------------------------"printf "good , shell,\n,python"#输出:OK! is a echo----------------------------good , shell,,python
printf格式化
#!/bin/bash#author:zrcprintf "%-10s %-8s %-4s\n" id name ageprintf "%-10s %-8s %-4s\n" 1 jeey 18printf "%-10s %-8s %-4.2f\n" 2 tom 19printf "%-10s %-8s %-4.2f\n" 3 king 20printf "%-10s %-8s %-4.2f\n" 4 quren 33.333#输出id name age 1 jeey 18 2 tom 19.003 king 20.004 quren 33.33
%-10s %-8s %-4s\n 都是针对参数类别的格式化%-10s -- 第一位参数必须是string字符串(-10 表示宽度为10个字符且左对齐,没有-表示右对齐;如果不是字符和字符串 就报错 )%-8s -- 第二位参数必须是string字符串(-8 表示宽度为8个字符且左对齐,没有-表示右对齐;如果不是字符和字符串 就报错 )%-4s -- 第三位参数必须是string字符串(-4 表示宽度为4个字符且左对齐,没有-表示右对齐;如果不是字符和字符串 就报错 )%-4.2f -- 第三位参数必须是float浮点(-4.2 表示宽度为4个格式化小数,保留后面两位,没有-表示右对齐;如果不是整数 就报错 )
printf案例
更多案例:
#!/bin/bash#author:zrc#没有引号printf %s'\n' aaaaa #单引号printf '%d %s\n' '123456' 'aaaaa'#双引号printf "%d %s\n" '123456' 'bbbbb'#超过指定参format-string数,会被重用printf "%d %s\n" '123456' 'aaaaa' '456789' 'ccccc'#如果没有参数,那么%s用NULL代替,%d用0代替printf "%s --- %d"'\n'#%c 自动截取字符串的第一个字符作为结果输出printf "%d %c\n" '123456' 'bbbbb'
%d %s %c %f 都是针对参数类别的格式化%d -- 十进制整数(对应参数位必须是整数,如果不是就报错 )%c --Char字符(对应参数位必须是字符串或者字符型,如果不是就报错 )
prinf转义符
| 序列 | 说明 |
|---|---|
| \a | 警告字符,通常为ASCII的BEL字符 |
| \b | 后退 |
| \c | 抑制(不显示)输出结果中任何结尾的换行字符(只在%b格式指示符控制下的参数字符串中有效),而且,任何留在参数里的字符、任何接下来的参数以及任何留在格式字符串中的字符,都被忽略 |
| \f | 换页(formfeed) |
| \n | 换行 |
| \r | 回车(Carriage return) |
| \t | 水平制表符 |
| \v | 垂直制表符 |
| \\ | 一个字面上的反斜杠字符 |
Shell echo命令
#!/bin/bash#author:zrc#显示字符串echo "this is string"#显示转义字符echo "\"this is string\""#显示结果定向到文件,符号>>追加到文件echo "this is string" > file#显示输入变量read name echo -e "this is ${name} \n" # -e开启转义 -n换行echo -e "this is ${name} \c" # -e开启转义 -c不换行read password -p "请输入一段文字:" -n 6 -t 5 -secho -e "\n password is $password"参数说明: -p 输入提示文字 -n 输入字符长度限制(达到6位,自动结束) -t 输入限时 -s 隐藏输入内容
字符
参数
字符串
格式
转义
输入
输出
命令
宽度
引号
整数
结果
制表符
文件
文字
案例
类别
制表
控制
字符型
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
长沙管理冷库软件开发
原油期货 什么软件开发
javaweb跟新数据库
中科创达去做软件开发怎么样
google永久服务器
服务器设备备件清单包含哪些东西
公安网络安全与执法专业
郑州梦圆达软件开发有限公司
服务器 360安全卫士
数据库应用技术吉大
p2p对等网络技术 胡星
访问文件服务器显示文件夹不完整
云储存管理服务器价格
怎么检查服务器的安全性
数据库的闪回
台湾服务器代理
数据库管理技术的发展阶段有
自学网络安全的基本功
安全狗无法连接服务器
cad转成gis地理数据库
衡阳软件开发基地
广州网络安全等保认证
学生宿舍管理系统数据库教程
服务器的idrac管理界面
服务器报警阀值
云储存管理服务器价格
淘宝项目数据库设计
只显示服务器管理器
广州仲哥互联网科技有限公司
农村家庭能源消费数据库