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
相关推荐
johnny2334 小时前
运维管理面板:AcePanel、OpenOcta、DeepSentry
运维
青梅橘子皮4 小时前
Linux---基本指令
linux·运维·服务器
REDcker5 小时前
Linux信号机制详解 POSIX语义与内核要点 sigaction与备用栈实践
linux·运维·php
cui_ruicheng6 小时前
Linux进程间通信(三):System V IPC与共享内存
linux·运维·服务器
蚰蜒螟6 小时前
深入 Linux 内核同步机制:从 futex 到 spinlock 的完整旅程
linux·windows·microsoft
运维全栈笔记6 小时前
Linux安装配置Tomcat保姆级教程:从部署到性能调优
linux·服务器·中间件·tomcat·apache·web
dllmayday7 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
ACP广源盛139246256737 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
峥无9 小时前
Linux系统编程基石:静态库·动态库·ELF文件·进程地址空间全景图
linux·运维·服务器
用户2367829801689 小时前
从 chmod 755 说起:Unix 文件权限到底是怎么算的?
linux