Shell学习【printf与echo】
发表于:2024-10-02 作者:千家信息网编辑
千家信息网最后更新 2024年10月02日,Shell printf命令echo命令主要用于字符串的输出,可以是不要引号但不支持转义,双引号可用于转义字符,printf命令也是输出命令但是要比echo 的移植性好,制定字符串的宽度,左右对其方式
千家信息网最后更新 2024年10月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安全错误
数据库的锁怎样保障安全
大学生网络技术应用
meta数据库
杭州易传识网络技术有限公司
人人爱家网络技术有限公司
32位sql数据库
网络安全会议内容2020
亚太区思科网络技术大赛
服务器 用户管理
网络安全体制内责任
苹果查序列号显示服务器未响应
四川浪潮服务器代理
mysql数据库驱动设置
大专学历的软件开发人员
上位机软件开发很难吗
2020合肥网络安全排查
小白去做软件开发
数据库++技术支持
服务器交换机配什么口
数据库原理及应用课后答案
数据库分段权重路由
北京华天加成软件开发中心
sql数据库查不到中文
域服务器管理员密码如何破解
网络安全的警察好
网络安全权力清单
许昌2021网络安全宣传周
网络安全公司条件
软件开发编写小程序
中文软件开发工具零基础
用友软件开发企业全称