Shell-(五)Shell读取控制台输入和函数

本文最后更新于:May 10, 2022 pm

Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。

目录

read读取控制台输入

基本语法:read (选项) (参数)

选项:

  • -p:指定读取值时的提示符。
  • -t:指定读取值时等待的时间(秒),如果不加 -t 表示一直等待(直到用户输入)。

参数:

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

示例:

脚本 parameter.sh

1
2
3
4
#!/bin/bash
echo '===开始执行了==='
read -t 10 -p "请输入用户名:" username
echo "welcome,$username"

执行:

1
2
3
4
root@VM-12-8-ubuntu:~/myscript# ./parameter.sh 
===开始执行了===
请输入用户名:墨水记忆
welcome,墨水记忆

函数

自定义函数

基本语法

1
2
3
4
[ function ]funname[()]{ //选择性
Action;
[return int;] // 选择性
}

示例:

函数必须先声明后才能再调用。

脚本 parameter.sh

1
2
3
4
5
6
7
8
9
10
#!/bin/bash
function add(){
s=$[ $1 + $2 ]
echo "ans:"$s
}

echo '===开始执行了==='
read -t 10 -p "请输入a " a
read -t 10 -p "请输入b " b
add $a $b

执行:

1
2
3
4
5
root@VM-12-8-ubuntu:~/myscript# ./parameter.sh 
===开始执行了===
请输入a 10
请输入b 3
ans:13

示例二:具有返回值的函数

脚本 parameter.sh

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash
function add(){
s=$[ $1 + $2 ]
echo $s
}

echo '===开始执行了==='
read -t 10 -p "请输入a " a
read -t 10 -p "请输入b " b
sum=$(add $a $b)
echo "ans:"$sum
echo "ans2:"$[ $sum * $sum ]

执行:

1
2
3
4
5
6
root@VM-12-8-ubuntu:~/myscript# ./parameter.sh 
===开始执行了===
请输入a 265
请输入b 100
ans:365
ans2:133225

本文作者: 墨水记忆
本文链接: https://tothefor.com/DragonOne/a95b419.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!