Điểm:0

Bash từ đầu

lá cờ cn

Tôi biết điều này nghe có vẻ nực cười, nhưng để bảo vệ tôi, tôi sẽ nói rằng tôi mới bắt đầu loay hoay với viết mã và đặc biệt là bash, vì vậy đừng phán xét tôi quá khắt khe...

Tôi vừa nhúng vào đây:

#!/bin/bash

echo -n "Nhập một số:"
đọc VAR

nếu [[ $VAR -gt 10 ]]
sau đó
  echo "Biến lớn hơn 10."
fi

Vấn đề là bất kỳ con số nào tôi viết lên đều không thay đổi gì cả. Thậm chí 2 sẽ lớn hơn 10. Chuyện gì vậy?

Karlom avatar
lá cờ de
Scrpt này hoạt động tốt với tôi: `Nhập một số: 12 Biến lớn hơn 10.` Vấn đề chính xác là gì?
paladin avatar
lá cờ kr
Vui lòng thực hiện `ls /bin/bash -l` và cho chúng tôi biết đầu ra là gì. `/bin/bash --version` cũng sẽ hữu ích.
terdon avatar
lá cờ cn
Bạn có hai thực hành không tốt ở đó: i) tránh sử dụng CAPS cho các biến.Theo quy ước, các biến môi trường toàn cầu được viết hoa và nếu bạn cũng đặt biến môi trường của mình theo cách đó, điều đó có thể gây ra các lỗi đáng ngạc nhiên. ii) Luôn trích dẫn các biến của bạn khi sử dụng chúng.
Điểm:5
lá cờ vn

Tập lệnh có cú pháp đúng và phù hợp với tôi. Nếu tôi nhập bất cứ thứ gì từ 0-10, nó sẽ không lặp lại bất kỳ văn bản nào.

Để tham khảo trong tương lai, tôi khuyên bạn nên cài đặt kiểm tra vỏ sò và tạo thói quen kiểm tra cú pháp tập lệnh của bạn với nó.

Điểm:2
lá cờ us

Ngoài ra (vì bạn đề cập rằng bạn đang học bash), bạn có thể sử dụng biểu thức số học:

nếu (( VAR > 10 ))
sau đó
    echo "Giá trị lớn hơn 10."
fi

Hoặc một lớp lót ngắn gọn hơn:

(( VAR <= 10 )) || echo "Giá trị lớn hơn 10."

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.