当前位置: 首页 > news >正文

Shell echo、printf、test命令

目录

Shell echo命令

打印文本消息

显示变量值

输出特殊字符

输出到文件

追加到文件

Shell printf 命令

打印简单文本

Shell test 命令

文件测试

字符串比较

整数比较

逻辑运算


Shell echo命令

打印文本消息

echo "Hello, World!"

显示变量值

name="Alice"
echo "My name is $name"

输出特殊字符

\t:代表制表符(Tab键)、\n:代表换行符;

echo "New\t line\n"

输出到文件

这将把 "Hello, File!" 输出到名为 output.txt 的文件中,如果文件存在则覆盖内容。

echo "Hello, File!" > output.txt

追加到文件

这将把 "More content" 追加到 output.txt 文件末尾。

echo "More content" >> output.txt

Shell printf 命令

当你使用Shell中的printf命令时,它可以帮助你格式化和输出文本。

打印简单文本

这将简单地打印字符串"Hello, World!",并在末尾添加一个换行符\n来换行。

printf "Hello, World!\n"

Shell test 命令

当你使用Shell中的test命令时,它用于测试条件是否为真(True)。test命令通常用于Shell脚本中的条件判断,以便根据条件的结果执行不同的操作。

文件测试

用于测试文件和目录的属性

-e 文件:检查文件是否存在。

-f 文件:检查文件是否是一个常规文件。

-d 文件:检查文件是否是一个目录。

-s 文件:检查文件是否不为空(即文件大小是否大于零)。

-r 文件:检查文件是否可读。

-w 文件:检查文件是否可写。

-x 文件:检查文件是否可执行。

示例:

if [ -e "myfile.txt" ]; thenecho "文件存在"
fi

字符串比较

用于测试字符串的内容

字符串1 = 字符串2:检查两个字符串是否相等。

字符串1 != 字符串2:检查两个字符串是否不相等。

-n 字符串:检查字符串是否非空。

-z 字符串:检查字符串是否为空。

示例:

if [ "$name" = "Alice" ]; thenecho "姓名是Alice"
fi

整数比较

用于测试整数值

整数1 -eq 整数2:检查两个整数是否相等。

整数1 -ne 整数2:检查两个整数是否不相等。

整数1 -lt 整数2:检查整数1是否小于整数2。

整数1 -le 整数2:检查整数1是否小于或等于整数2。

整数1 -gt 整数2:检查整数1是否大于整数2。

整数1 -ge 整数2:检查整数1是否大于或等于整数2。

示例:

if [ $age -lt 18 ]; thenecho "年龄小于18岁"
fi

逻辑运算

用于进行逻辑操作

! 表达式:逻辑非,取反操作。

表达式1 -a 表达式2:逻辑与,当两个表达式都为真时返回真。

表达式1 -o 表达式2:逻辑或,当两个表达式中至少有一个为真时返回真。

示例:

if [ ! -e "file.txt" -a "$user" = "admin" ]; thenecho "文件不存在且用户是管理员"
fi

 

http://www.lryc.cn/news/307054.html

相关文章:

  • 腾讯云主机Ubuntu22.04安装Odoo17
  • conda常用命令详解
  • Java面试——锁
  • Spring Boot与Netty:构建高性能的网络应用
  • ARMv8-AArch64 的异常处理模型详解之异常处理详解(同步异常和异步异常的分析和处理)
  • Elasticsearch:基于 Langchain 的 Elasticsearch Agent 对文档的搜索
  • 学习python的第7天,她不再开放她的听歌榜单
  • 多维时序 | Matlab实现CPO-BiTCN-BiGRU冠豪猪优化时间卷积神经网络双向门控循环单元多变量时间序列预测模型
  • 低代码与大语言模型的探索实践
  • element导航菜单el-menu添加搜索功能
  • 浅析SpringBoot框架常见未授权访问漏洞
  • PostgreSQL内存上下文系统设计概述
  • C++ 网络编程学习二
  • SpringMVC 学习(四)之获取请求参数
  • 多模态表征—CLIP及中文版Chinese-CLIP:理论讲解、代码微调与论文阅读
  • Git本地分支关联远程分支
  • [FT]chatglm2微调
  • AI赋能Oracle DBA:以自然语言与Oracle数据库互动
  • Django学习记录04——靓号管理整合
  • AD9226 65M采样 模数转换
  • 远程控制桌面,让电脑办公更简单
  • 猫头虎分享已解决Bug || 网络连接问题:NetworkError: Failed to fetch
  • Layer1 明星项目 Partisia Blockchain 何以打造互操作、可创新的数字经济网络
  • 用CSS制作弧形卡片的三种创意方法!
  • 守护健康之光 —— 小脑萎缩患者的生活指南
  • CSS选择器:让样式精确命中目标
  • 前端不传被删记录的id怎么删除记录,或子表如何删除记录
  • axios的基本特性用法
  • 打印水仙花数---c语言刷题
  • springboot基础(82):分布式定时任务解决方案shedlock