写一个shell脚本 输入一个str 判断str是否为空 若为空 输出1 不为空输出2
时间: 2024-04-12 07:27:20 浏览: 30
你可以使用以下的shell脚本来实现你的需求:
```bash
#!/bin/bash
read -p "请输入一个字符串: " str
if [ -z "$str" ]; then
echo "1"
else
echo "2"
fi
```
这个脚本会提示用户输入一个字符串,并且判断输入的字符串是否为空。如果为空则输出"1",否则输出"2"。你可以保存这段脚本为一个文件,比如`check_str.sh`,然后在终端中运行该脚本来测试。
相关问题
shell if -n 判断两个字符串或不为空
在Shell脚本中,可以使用`-n`选项来判断一个字符串是否非空。这个选项用于检查字符串的长度是否大于零,如果大于零则返回`true`,否则返回`false`。
下面是一个示例代码,用于演示如何使用`-n`选项来判断两个字符串是否非空:
```shell
#!/bin/bash
str1="Hello"
str2="World"
if [ -n "$str1" ] && [ -n "$str2" ]; then
echo "Both strings are non-empty."
else
echo "At least one of the strings is empty."
fi
```
在上面的示例中,我们定义了两个字符串`str1`和`str2`,然后使用`-n`选项在`if`语句中判断这两个字符串是否非空。如果两个字符串都非空,输出"Both strings are non-empty.",否则输出"At least one of the strings is empty."。
注意,`-n`选项要求字符串被双引号括起来,这样可以防止字符串中包含空格或其他特殊字符时出现错误。
shell脚本创建一个空字符串
在Shell脚本中,可以通过以下方式创建一个空字符串:
1. 使用单引号或双引号将空字符串括起来:
```
str=''
```
或
```
str=""
```
2. 使用空格作为字符串的内容:
```
str=" "
```
3. 使用特殊字符的转义序列来表示空字符串:
```
str=$'\0'
```
这些方法都可以创建一个空字符串,你可以根据需要选择其中的一种方式。