Giới thiệu
Trong lab này, bạn sẽ học cách sử dụng lệnh read
trong Linux để thu thập dữ liệu nhập từ người dùng và lưu trữ nó trong một biến. Bạn cũng sẽ học cách xác thực dữ liệu nhập từ người dùng bằng lệnh read
. Lab này bao gồm mục đích và cú pháp của lệnh read
, cách đọc dữ liệu nhập từ người dùng và lưu trữ nó trong một biến, và cách xác thực dữ liệu nhập từ người dùng.
Lệnh read
là một lệnh tích hợp sẵn trong Linux và thường được sử dụng cho việc viết script shell tương tác. Nó cho phép bạn thu thập dữ liệu nhập từ người dùng và lưu trữ nó trong một biến, biến này sau đó có thể được sử dụng trong các script hoặc chương trình của bạn.
Tìm hiểu Mục đích và Cú pháp của Lệnh read
Trong bước này, bạn sẽ tìm hiểu về mục đích và cú pháp của lệnh read
trong Linux. Lệnh read
được sử dụng để thu thập dữ liệu nhập từ người dùng và lưu trữ nó trong một biến.
Cú pháp cơ bản của lệnh read
là:
read [options] [variable_name]
Ở đây, [options]
là các flag tùy chọn bạn có thể sử dụng với lệnh read
, và [variable_name]
là tên của biến nơi dữ liệu nhập từ người dùng sẽ được lưu trữ.
Một số tùy chọn phổ biến cho lệnh read
bao gồm:
-p
: Hiển thị một dấu nhắc trước khi chờ dữ liệu nhập từ người dùng.-s
: Ngăn chặn việc hiển thị dữ liệu nhập của người dùng.-n
: Chỉ đọc số lượng ký tự được chỉ định.-t
: Chỉ định thời gian chờ tính bằng giây cho thao tác đọc.
Ví dụ:
read -p "Enter your name: " name
echo "Hello, $name!"
Ví dụ đầu ra:
Enter your name: John
Hello, John!
Trong ví dụ này, lệnh read
nhắc người dùng nhập tên của họ và dữ liệu nhập được lưu trữ trong biến name
. Lệnh echo
sau đó sử dụng giá trị của biến name
để hiển thị lời chào.
Đọc Dữ liệu Nhập từ Người dùng và Lưu trữ nó trong một Biến
Trong bước này, bạn sẽ học cách sử dụng lệnh read
để thu thập dữ liệu nhập từ người dùng và lưu trữ nó trong một biến.
Để đọc dữ liệu nhập từ người dùng và lưu trữ nó trong một biến, bạn có thể sử dụng cú pháp sau:
read variable_name
Ở đây, variable_name
là tên của biến nơi dữ liệu nhập từ người dùng sẽ được lưu trữ.
Ví dụ:
echo "What is your favorite color?"
read favorite_color
echo "Your favorite color is $favorite_color."
Ví dụ đầu ra:
What is your favorite color?
blue
Your favorite color is blue.
Trong ví dụ này, người dùng được nhắc nhập màu yêu thích của họ và dữ liệu nhập được lưu trữ trong biến favorite_color
. Lệnh echo
sau đó sử dụng giá trị của biến favorite_color
để hiển thị một thông báo.
Bạn cũng có thể sử dụng tùy chọn -p
với lệnh read
để hiển thị một dấu nhắc cho người dùng:
read -p "Enter your age: " age
echo "You are $age years old."
Ví dụ đầu ra:
Enter your age: 30
You are 30 years old.
Trong ví dụ này, tùy chọn -p
được sử dụng để hiển thị dấu nhắc "Enter your age: " trước khi chờ dữ liệu nhập từ người dùng và dữ liệu nhập được lưu trữ trong biến age
.
Xác thực Dữ liệu Nhập từ Người dùng với Lệnh read
Trong bước này, bạn sẽ học cách sử dụng lệnh read
để xác thực dữ liệu nhập từ người dùng.
Một cách phổ biến để xác thực dữ liệu nhập từ người dùng là sử dụng vòng lặp while
với lệnh read
. Điều này cho phép bạn tiếp tục nhắc người dùng nhập dữ liệu cho đến khi họ cung cấp một phản hồi hợp lệ.
Ví dụ:
while true; do
read -p "Enter a number between 1 and 10: " num
if [[ "$num" -ge 1 && "$num" -le 10 ]]; then
echo "You entered: $num"
break
else
echo "Invalid input. Please try again."
fi
done
Ví dụ đầu ra:
Enter a number between 1 and 10: 15
Invalid input. Please try again.
Enter a number between 1 and 10: 7
You entered: 7
Trong ví dụ này, lệnh read
được sử dụng bên trong một vòng lặp while
để liên tục nhắc người dùng nhập dữ liệu cho đến khi họ nhập một số trong khoảng từ 1 đến 10. Câu lệnh if
kiểm tra dữ liệu nhập của người dùng và nếu nó hợp lệ, vòng lặp sẽ thoát bằng lệnh break
. Nếu dữ liệu nhập không hợp lệ, một thông báo lỗi sẽ được hiển thị và vòng lặp tiếp tục.
Bạn cũng có thể sử dụng lệnh read
với tùy chọn -n
để giới hạn số lượng ký tự người dùng có thể nhập, hoặc tùy chọn -t
để đặt thời gian chờ cho dữ liệu nhập.
Ví dụ:
read -n 1 -p "Enter 'y' or 'n': " answer
echo "You entered: $answer"
Ví dụ đầu ra:
Enter 'y' or 'n': y
You entered: y
Trong ví dụ này, tùy chọn -n 1
giới hạn dữ liệu nhập của người dùng thành một ký tự duy nhất và tùy chọn -p
hiển thị một dấu nhắc.
Tóm tắt
Trong lab này, bạn đã tìm hiểu về mục đích và cú pháp của lệnh read
trong Linux, được sử dụng để thu thập dữ liệu nhập từ người dùng và lưu trữ nó trong một biến. Bạn cũng đã học cách đọc dữ liệu nhập từ người dùng và lưu trữ nó trong một biến, cũng như cách sử dụng tùy chọn -p
để hiển thị một dấu nhắc cho người dùng. Cuối cùng, bạn đã học cách xác thực dữ liệu nhập từ người dùng bằng lệnh read
.
Lệnh read
có một số flag tùy chọn, chẳng hạn như -p
để hiển thị dấu nhắc, -s
để ngăn chặn việc hiển thị dữ liệu nhập của người dùng, -n
để chỉ đọc một số lượng ký tự được chỉ định và -t
để chỉ định thời gian chờ cho thao tác đọc. Bạn có thể sử dụng các flag này để tùy chỉnh hành vi của lệnh read
cho phù hợp với nhu cầu của bạn.