回顾:猜数字
本课属于 Coddy Terminal 学习旅程的“基础知识”单元。第 73 课,共 82 课。
挑战
简单创建一个名为 guesser.sh 的 shell 脚本,用固定的一系列猜测来模拟数字猜谜游戏。
你的脚本应:
- 以 shebang 行(
#!/bin/bash)开头 - 将名为
secret的变量设为5 - 将名为
guess的变量初始值设为0 - 使用 while 循环,只要
guess不等于secret,循环就继续 - 在循环内,将
guess增加 1 - 使用 if 语句检查猜测结果:
- 如果
guess小于secret,打印:Guess [guess]: Too low! - 如果
guess等于secret,打印:Guess [guess]: Correct!
- 如果
让脚本可以执行,然后运行它。输出应为:
Guess 1: Too low!
Guess 2: Too low!
Guess 3: Too low!
Guess 4: Too low!
Guess 5: Correct!每行使用一个
echo来编写多行脚本是可行的,不过还有一种更简短的写法:here 文档会将内容一直传入文件,直到遇到结束标记。cat > script.sh << 'EOF' #!/bin/bash echo "hello" EOF
'EOF'两边的引号可以防止写入文件时展开$variables,如果脚本本身要使用这些变量,这正是你需要的效果。
提示:在 while 条件中使用
-ne表示“不等于”,在 if 语句中使用-lt表示“小于”,使用-eq表示“等于”。在每次循环迭代开始时,使用guess=$((guess + 1))来增加猜测值。
亲手试试
终端
基础知识中的所有课
自己练习: Terminal 在线编辑器