shell编程(下)
一---read读取控制台输入
基本语法
read 选项 参数
选项说明:
-p 指定读取时的提示符。
-t 指定读取等待的时间,超时不再等待。
参数:
变量:指定读取值的变量名
应用实例:
案例1:读取控制台输入一个NUM1值
read -p "请输入一个数" NUM1
echo "您输入的数为:" $NUM1
案例2:读取控制台输入一个NUM2的值,在10秒内输入。
read -t 10 -p "请输入 一个数" NUM2
echo "您输入的数为" $NUM2
二---函数:
1)basename
返回完整路径最后/的部分,常用于获取文件名
basename [patnname] [suffix]
basename[string][后缀](删除所有的前缀包括最后一个'/'字符,然后将字符串显示出来。
suffix为后缀,如果suffix被指定了,basename会将pathname或string中的suffix去掉。
应用案例:
返回/home/aaa/test.txt的“test.txt”部分。
basename /home/aaa/test.txt
2)dirname:
返回路径最后/的前面的部分,返回路径部分
案例:返回/home/aaa/test.txt的/home/aaa
dirname /home/aaa/test.txt
3)自定义函数:
基本语法
function 函数名()
{
代码;
return int;
}
调用直接写函数名:函数名 [值]
案例1:计算输入两个参数的和。
#!/bin/bash
function getSum() {
SUM=$[ $n1+$n2 ](注意等号两边不能有空格)
echo "和是=$SUM"
}
read -p "请输入一个数n1=" n1
read -p "请输入一个数n2=" n2
getSum $n1 $n2
~
四---shell编程综合案例
需求分析;
1)每天凌晨2:30备份数据库hspedu到/data/backup/db
2)备份开始和备份结束能够给出相应的提示信息
3)备份后的文件要求以备份时间为文件名,并打包成tar.gz的形式,比如 :2021-03-12_230201.tar.gz
4)在备份的同时,检查是否有10天前备份的数据库 ,如果有就将其删除。
posted on 2021-01-30 19:46 Love&Share 阅读(48) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~