Linux入门(十八)read&函数

read 读取控制台输入

基本语法

read 选项 参数

选项

-p 指定读取值时的提示符

-t 指定读取值时等待的时间(秒),如果没有在指定的时间内输入,就不再等待了

参数

变量:指定读取值的变量名

实例:

1、读取控制台输入一个num值

2、读取控制台输入一个num值,在10秒内输入

bash 复制代码
vi test_read.sh
#!/bin/bash
#读取控制台输入一个num值
read -p "请输入一个num1=" num1
echo "输入的num1=$num1"
#读取控制台输入一个num值,在10秒内输入

read -t 10 -p "请输入一个num2=" num2

echo "输入的num2=$num2"

函数:系统函数和自定义函数
basename

功能:返回完整路径最后/的部分,常用于获取文件名

语法

basename [pathname] [suffix]

suffix 为后缀 ,如果suffix被指定了,basename会将pathname或string中的suffi去掉
dirname

功能:返回完整路径最后/前面的部分,常用于返回路径部分

实例

1、请返回/root/test_shell_code/test_read.sh 的test_read.sh部分

bash 复制代码
basename /root/test_shell_code/test_read.sh
basename /root/test_shell_code/test_read.sh .sh

2、请返回/root/test_shell_code/test_read.sh 的/root/test_shell_codebuf

bash 复制代码
 dirname /root/test_shell_code/test_read.sh .sh

自定义函数

基本语法

function \] funname \[()

{

代码

reutrn int;

}

调用 直接写函数名:funame [值]

实例

1、计算输入的两个参数的和,getSum

bash 复制代码
 vi  test_fun.sh
 #!/bin/bash
function getSum(){
        SUM=$[$1+$2]
        echo "总和=$SUM"
}
read -p "请输入一个数n1=" n1
read -p "请输入一个数n2=" n2
getSum $n1 $n2

如果想要getSum 函数在别的sh文件里调用

bash 复制代码
 vi  test_fun.sh
  #!/bin/bash
function getSum(){
        SUM=$[$1+$2]
        echo "总和=$SUM"
}
vi test_fun2.sh
#!/bin/bash
#导入sh 文件
#source /root/test_shell_code/test_fun.sh
#或者使用简写
. /root/test_shell_code/test_fun.sh
read -p "请输入一个数n1=" n1
read -p "请输入一个数n2=" n2
getSum $n1 $n2
相关推荐
人工智能训练7 小时前
【极速部署】Ubuntu24.04+CUDA13.0 玩转 VLLM 0.15.0:预编译 Wheel 包 GPU 版安装全攻略
运维·前端·人工智能·python·ai编程·cuda·vllm
微露清风9 小时前
系统性学习Linux-第二讲-基础开发工具
linux·运维·学习
不会代码的小猴9 小时前
Linux环境编程第六天笔记--system-V IPC
linux·笔记
阳光九叶草LXGZXJ9 小时前
达梦数据库-学习-48-DmDrs控制台命令(同步之Manager、CPT模块)
linux·运维·数据库·sql·学习
诸神缄默不语9 小时前
Linux命令行教程
linux
小二李11 小时前
第11章 nestjs服务端开发:登录鉴权
运维·服务器
i建模11 小时前
如何在Arch Linux中重设忘记的root密码
linux·运维·服务器
chatexcel12 小时前
元空AI+Clawdbot:7×24 AI办公智能体新形态详解(长期上下文/自动化任务/工具粘合)
运维·人工智能·自动化
kida_yuan13 小时前
【Linux】运维实战笔记 — 我常用的方法与命令
linux·运维·笔记
@syh.13 小时前
【linux】进程控制
linux