写一个shell脚本,计算两个数的和,两个数从参数传入
时间: 2023-08-02 18:45:48 浏览: 66
可以尝试以下的脚本:
```bash
#!/bin/bash
# 计算两个数的和
# 获取第一个参数
num1=$1
# 获取第二个参数
num2=$2
# 判断参数是否为空
if [ -z "$num1" ] || [ -z "$num2" ]; then
echo "请传入两个数字作为参数"
exit 1
fi
# 计算两数之和
sum=$(($num1 + $num2))
# 输出结果
echo "两数之和为:$sum"
```
在终端中运行该脚本,例如:
```bash
$ sh sum.sh 10 20
两数之和为:30
```
其中 `sum.sh` 是脚本文件名,`10` 和 `20` 是传入脚本的两个数字参数。
相关问题
shell脚本怎么支持传入多个不同参数
shell脚本可以使用命令行参数来传递参数。你可以使用特殊的变量$1,$2,$3等来引用命令行参数。如果你想支持传入多个不同参数,可以使用$*或$@变量来引用所有的命令行参数。这两个变量都可以将所有的参数看作一个整体进行处理,但是在使用时有一些区别。
$*将所有的参数看作一个整体,以"$1 $2 $3..."的形式输出。
$@将所有的参数看作一个单独的字符串,以"$1" "$2" "$3"的形式输出。
以下是一个例子:
```shell
#!/bin/bash
echo "参数个数为: $#"
echo "所有参数为: $*"
for arg in $*
do
echo $arg
done
echo "所有参数为: $@"
for arg in $@
do
echo $arg
done
```
假设你的脚本名为test.sh,你可以通过以下命令来运行它并传入多个参数:
```shell
./test.sh arg1 arg2 arg3
```
你将得到以下输出:
```
参数个数为: 3
所有参数为: arg1 arg2 arg3
arg1
arg2
arg3
所有参数为: arg1 arg2 arg3
arg1
arg2
arg3
```
linux编写一函数add求两个数的和,这两个数用位置参数传入,最后输出结果
好的,以下是 Shell 脚本实现:
```bash
#!/bin/bash
add() {
# 求两个数的和
result=$(($1 + $2))
echo "两数之和为:$result"
}
# 测试
num1=10
num2=20
add $num1 $num2
```
其中,`add` 函数接受两个位置参数 `$1` 和 `$2`,使用 `$((...))` 进行求和运算,并将结果赋值给变量 `result`。最后,使用 `echo` 输出结果。在测试时,我们传入两个数 `num1` 和 `num2` 给函数 `add`,并直接调用函数,将结果输出。运行这段代码,输出结果为:
```
两数之和为:30
```