编写一段代码,文件名为s03.sh,要求通过键盘输入内容zhangsan,20,输出内容为my name is zhangsan, my age is 20.
时间: 2023-06-06 15:07:29 浏览: 111
下面是s03.sh的代码:
#!/bin/bash
echo "请输入姓名和年龄(用逗号分隔):"
read input
name=$(echo $input | cut -d ',' -f 1)
age=$(echo $input | cut -d ',' -f 2)
echo "my name is $name"
echo "my age is $age"
相关问题
通过输入参数形式实现,如 sh my.sh 21大数据C班 张三 zhangsan 10001,将1、2二步使用函数方式进行封装,函数名分别为 func_createFolder、func_createUser
可以这样实现:
```shell
#!/bin/bash
# 创建文件夹
func_createFolder() {
folder_name=$1
mkdir $folder_name
echo "文件夹 $folder_name 创建成功!"
}
# 创建用户
func_createUser() {
class_name=$1
real_name=$2
user_name=$3
student_id=$4
echo "班级:$class_name,姓名:$real_name,用户名:$user_name,学号:$student_id"
}
if [ $# -ne 4 ]; then
echo "参数错误!请输入:sh my.sh 班级 姓名 用户名 学号"
exit 1
fi
class_name=$1
real_name=$2
user_name=$3
student_id=$4
func_createFolder $class_name
func_createUser $class_name $real_name $user_name $student_id
```
这个脚本接收四个参数,分别是班级、姓名、用户名和学号。首先判断参数个数是否正确,然后调用 `func_createFolder` 函数创建文件夹,并调用 `func_createUser` 函数输出用户信息。
大作业要求: 一、使用linux下的shell编程,创建 /home/my.sh 文件,实现以下功能: 1、在 /home 目录下创建班级名称目录,名称为:21大数据A班 2、创建用户账号(账号名为学生的姓名拼音全拼,如张三的拼音全拼为 zhangsan),默认密码为 123456,用户主目录为 /home/21大数据A班/学号,全名为张三 3、通过输入参数形式实现,如 sh my.sh 21大数据A班 张三 zhangsan 10001 4、将1、2二步使用函数方式进行封装,函数名分别为 func_createFolder、func_createUser
这是一个和之前类似的问题,我可以提供相同的答案。您可以使用以下代码实现:
```bash
#!/bin/bash
# 创建班级目录
function func_createFolder {
folder="/home/$1"
if [ ! -d "$folder" ]; then
mkdir "$folder"
fi
}
# 创建用户账号
function func_createUser {
username="$3"
userhome="/home/$1/$2"
if [ ! -d "$userhome" ]; then
mkdir "$userhome"
fi
if id "$username" >/dev/null 2>&1; then
echo "用户 $username 已存在"
else
useradd -d "$userhome" -m -s /bin/bash -c "$4" "$username"
echo "$username:123456" | chpasswd
echo "用户 $username 创建成功"
fi
}
# 输入参数
class=$1
name=$2
username=$3
sid=$4
fullname=$name
# 将姓名转换为拼音全拼
if command -v pinyin >/dev/null 2>&1; then
fullname=$(echo "$name" | pinyin -s '' -j '')
fi
# 创建班级目录
func_createFolder "$class"
# 创建用户账号
func_createUser "$class" "$sid" "$username" "$fullname"
```
使用时,将以上代码保存为 my.sh 文件,然后在终端中运行:
```
sh my.sh 21大数据A班 张三 zhangsan 10001
```
其中,第一个参数是班级名称,第二个参数是学生姓名,第三个参数是账号名,第四个参数是学生编号。
阅读全文