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

第一期第18讲26:23

shell脚本以 .sh为后缀,里面存放着一行行要运行的linux指令。

shell脚本第一行一定为 #!/bin/bash,表示使用bash。

shell文件举例如下:

#!/bin/bash

echo "hello shell!"

shell文件默认没有可执行权限,因此 chmod 777 myshell.sh

./myshell.sh

交互式shell

#!/bin/bash

echo "Please input your name: "

read name

echo "I have read your name" $name

read -p "Please input your name and height: " age height

echo "Your age is $age, your height is $height"

上述代码中,read用于读取变量,-p 用于输出提示信息

shell支持整型变量的运算

#!/bin/bash

echo "Please input two int nums: "

read -p "First num: " a

read -p "Second num: " b

total=$(($a + $b))

echo "$a + $b = $total"

运算表达式要用双重括号

total后的"="两边不能有空格

test命令的使用

1. 判断文件是否存在

#!/bin/bash

echo "Please input filename: "

read -p "File name: " filename

test -e $filename && echo "$filename exist!" || echo "$filename does not exist!"   

2. 判断字符串是否相等

#!/bin/bash

echo "Please input two strings: "

read -p "First string: " firststr

read -p "Second string: " second

test $firststr == $secondstr && echo "Equal" || echo "Not equal"

[ ] 判断符作用类似于test,里面只能使用==或!=

#!/bin/bash

echo "Please input two strings: "

read -p "First string: " firststr

read -p "Second string: " second

[ "$firststr" == "$secondstr" ] && echo "Equal" || echo "Not equal"

以上红色为空格,且变量两端要加双引号

http://www.xdnf.cn/news/58303.html

相关文章:

  • 把dll模块注入到游戏进程的方法_远线程注入
  • Linux系统启动全流程解析:从BIOS到用户登录
  • vscode 打开新页签
  • uniapp微信小程序:WIFI设备配网之TCP/UDP开发AP配网
  • Fine-grained Dynamic Network for Generic Event Boundary Detection
  • Day 12
  • 一文详解opencv-python环境搭建:Mac配置python的cv2开发环境
  • FTTR 全屋光纤架构分享
  • 电脑安装CentOS系统
  • μC/OS 版本演进过程 | uC/OS-II 和 uC/OS-III 有什么区别?
  • 国内主流 MCP 服务概览
  • 基于Surprise和Flask构建个性化电影推荐系统:从算法到全栈实现
  • 基于 DeepSeek大模型 开发AI应用的理论和实战书籍推荐,涵盖基础理论、模型架构、实战技巧及对比分析,并附表格总结
  • 基于SpringBoot的在线抽奖系统测试用例报告
  • 【KWDB创作者计划】_针对KWDB时序数据库(多副本集群环境)进行压力测试
  • Redis 键管理
  • MyBatis框架—xml映射
  • 34、Spark实现读取XLS文件
  • iOS中使用AWS上传zip文件到Minio上的oss平台上
  • nvidia physx
  • C# 封装教程
  • MCP实践第一步--磕磕碰碰搭环境
  • TensorFlow中使用Keras
  • Spring如何通过XML注册Bean
  • C++23 让 Lambda 表达式中的 () 更可选:P1102R2 提案深度解析
  • Apache RocketMQ 荣获 2024 开源创新榜单“年度开源项目
  • 【网络安全】OWASP 十大漏洞
  • 大数据组件学习之--Kafka 安装搭建
  • 机器人进阶---视觉算法(五)仿射变换和投影变换有什么区别
  • 国产AI新突破!全球首款无限时长电影生成模型SkyReels-V2开源:AI视频进入长镜头时代!