Menu
CoddyTech

Ôn tập: đoán số

Thuộc phần Kiến thức cơ bản trong hành trình Terminal của Coddy. Bài học 73 trên 82.

challenge icon

Thử thách

Dễ

Tạo một shell script có tên guesser.sh để mô phỏng trò chơi đoán số với một chuỗi lượt đoán cố định.

Script của bạn cần:

  1. Bắt đầu bằng dòng shebang (#!/bin/bash)
  2. Đặt biến có tên secret với giá trị 5
  3. Đặt biến có tên guess với giá trị ban đầu là 0
  4. Dùng vòng lặp while, tiếp tục chạy chừng nào guess chưa bằng secret
  5. Trong vòng lặp, tăng guess thêm 1
  6. Dùng câu lệnh if để kiểm tra lượt đoán:
    • Nếu guess nhỏ hơn secret, in ra: Guess [guess]: Too low!
    • Nếu guess bằng secret, in ra: Guess [guess]: Correct!

Đặt script ở chế độ có thể thực thi rồi chạy nó. Đầu ra cần là:

Guess 1: Too low!
Guess 2: Too low!
Guess 3: Too low!
Guess 4: Too low!
Guess 5: Correct!

Viết script nhiều dòng với một echo trên mỗi dòng cũng được, nhưng có một cách ngắn hơn: here document đưa mọi thứ cho đến từ đóng vào thẳng tệp.

cat > script.sh << 'EOF'
#!/bin/bash
echo "hello"
EOF

Dấu nháy quanh 'EOF' ngăn $variables được mở rộng trong lúc ghi tệp. Đây là điều bạn cần khi chính script sử dụng các biến đó.

Gợi ý: Dùng -ne cho điều kiện "không bằng" trong vòng lặp while, -lt cho "nhỏ hơn" trong câu lệnh if và -eq cho "bằng". Tăng lượt đoán ở đầu mỗi lần lặp bằng guess=$((guess + 1)).

Tự làm thử

Terminal

Tất cả bài học trong Kiến thức cơ bản

Tự luyện tập: Playground Terminal