shell编程封装一个函数,判断两个字符串s1和s2的大小,如果s1大于s2,返回1 s1小于s2返回2 s1等于s2返回0
时间: 2024-01-13 22:04:14 浏览: 55
可以使用以下的shell函数来实现:
```shell
compare_strings() {
if [ "$1" \> "$2" ]; then
echo 1
elif [ "$1" \< "$2" ]; then
echo 2
else
echo 0
fi
}
```
使用方法:
```shell
compare_strings "hello" "world" # 输出 2
compare_strings "world" "hello" # 输出 1
compare_strings "hello" "hello" # 输出 0
```
在这个函数中,我们使用了 `[` 命令来进行字符串比较。注意,我们在比较符号 `<` 和 `>` 前使用了反斜杠 `\`,因为这些符号在shell中有特殊的含义,需要进行转义。函数的返回值使用 `echo` 命令输出,可以在函数调用时进行捕获。
相关问题
shell编程封装一个函数,判断两个字符串s1和s2的大小,如果s1大于s2,返回1 s1小于s2返回2 s1等于s2返回0,键盘输入两个字符串,判断这两个字符串大小
可以使用以下的shell函数实现:
```shell
#!/bin/bash
compare_strings() {
if [ "$1" == "$2" ]; then
echo "0"
elif [[ "$1" > "$2" ]]; then
echo "1"
else
echo "2"
fi
}
echo "请输入第一个字符串:"
read str1
echo "请输入第二个字符串:"
read str2
result=$(compare_strings "$str1" "$str2")
echo "两个字符串的比较结果为:$result"
```
这个函数使用了bash的字符串比较功能,如果第一个字符串等于第二个字符串,那么返回0;如果第一个字符串大于第二个字符串,那么返回1;否则返回2。在脚本的主程序中,先让用户输入两个字符串,然后调用compare_strings函数进行比较,最后输出比较结果。
用shell 编程判断输入的两个字符串是否相等
可以使用以下 Shell 脚本代码来比较两个字符串是否相等:
```
#!/bin/bash
echo "请输入第一个字符串:"
read str1
echo "请输入第二个字符串:"
read str2
if [ "$str1" = "$str2" ]
then
echo "两个字符串相等"
else
echo "两个字符串不相等"
fi
```
上述代码中,首先使用 `read` 命令读取用户输入的两个字符串,然后使用 `if` 条件语句和字符串比较运算符 `=` 来判断两个字符串是否相等。如果相等,则输出“两个字符串相等”,否则输出“两个字符串不相等”。
阅读全文