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
相关推荐
long_mingyue41 分钟前
CVE-2022-46169漏洞复现
linux
默|笙1 小时前
【Linux】基本指令(2)
linux·运维·服务器
一位搞嵌入式的 genius1 小时前
暑期自学嵌入式——Day10(C语言阶段)
linux·笔记·学习·嵌入式c语言
被遗忘的旋律.1 小时前
Linux驱动开发笔记(五)——设备树(上)
linux·驱动开发·笔记
conkl4 小时前
构建 P2P 网络与分布式下载系统:从底层原理到安装和功能实现
linux·运维·网络·分布式·网络协议·算法·p2p
求知若渴,虚心若愚。5 小时前
Error reading config file (/home/ansible.cfg): ‘ACTION_WARNINGS(default) = True
linux·前端·ansible
π大星星️7 小时前
Nginx 四层(stream)反向代理 + DNS 负载均衡
运维·nginx·负载均衡
beyoundout7 小时前
HAproxy
linux·运维·服务器
qq_218753319 小时前
服务器查日志太慢,试试grep组合拳
运维·服务器
Jie_1710 小时前
【linux】高可用集群Keepalived
linux·运维·服务器