我想要实现的是,如果名称是“Instructor”,它会回复“Good Afternoon, Instructor”,如果是其他名称,它将回复“Good Evening, 'name'”并将结果发送到 file.txt 文件。
#!/bin/bash
read -p "what's your name?"
if [ "$name" = "Instructor" ]
then
echo "Good Afternoon, Instructor"
else
echo "good Evening, "$name" >> file.txt
fi
答案1
您不是从用户那里读取名称,而是使用name
和 then NAME
(这是两个不同的变量)。另外,$name
应该在 if 语句中使用双引号。
要将用户的输入读入变量name
,请使用read
:
read name
如果您愿意bash
,还可以使用read
来显示自定义提示:
echo 'Hello!'
read -p "What's your name? > " name
如果你不给出read
变量的名称,文本将进入REPLY
默认调用的变量。