liunx编写shell脚本work2.sh,完成以下功能: (1)定义一个初始变量,变量值设置为自己的名字拼音 (2)定义一个存储结果的文件路径:~/shellResults (3)取初始变量的前5个字符为新变量var1,如:liucheng -> liuch( 4)取初始变量的后5个字符为新变量var2,如:liucheng -> cheng( 5)依次比较var1和var2的每个字符,打印字符相等或不等信息 (6)把每次比较的结果存放在路径:~/shellResults/[第几个字符]/*.txt (7)截图上传脚本内容 (8)截图展示结果文件 提示:字符串截取,判断文件夹是否存在,创建文件夹,if-else语句,while语句或for语句
时间: 2024-01-22 14:21:30 浏览: 128
以下是work2.sh的代码:
```bash
#!/bin/bash
# 定义初始变量
name="liucheng"
# 定义存储结果的文件路径
result_path=~/shellResults
# 取初始变量的前5个字符为新变量var1
var1=${name:0:5}
# 取初始变量的后5个字符为新变量var2
var2=${name: -5}
# 比较var1和var2的每个字符,打印字符相等或不等信息
i=0
while [ $i -lt ${#var1} ]
do
if [ "${var1:$i:1}" = "${var2:$i:1}" ]; then
echo "${var1:$i:1} is equal to ${var2:$i:1}"
else
echo "${var1:$i:1} is not equal to ${var2:$i:1}"
fi
# 把每次比较的结果存放在路径:~/shellResults/[第几个字符]/*.txt
folder=$result_path/$((i+1))
if [ ! -d $folder ]; then
mkdir -p $folder
fi
echo "${var1:$i:1} is ${var2:$i:1}" > $folder/$i.txt
i=$((i+1))
done
```
截图展示work2.sh的执行结果:
截图展示结果文件:
结果文件被存放在了~/shellResults目录下,每个字符对应一个文件夹,其中每个文件夹中包含了对应字符比较的结果文件。
阅读全文