cuốn sách gpt4 ai đã làm

linux - Lý do thêm "_" vào if so sánh "if [ "_$str"= "_"]; then ....; fi"

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-02 23:14:20 28 4
mua khóa gpt4 Nike

Tôi đã thấy chúng được sử dụng nhiều lần trong các phép so sánh if trong các tập lệnh shell "_",如下所示:

if [ "_$str" = "_" ]; thì ....;

Đoạn mã trên so sánh nếu [ "_$str"= "_"] Kiểm tra xem biến str có trống không.

为什么不使用 nếu [ "$str" = ""]? Tại sao thêm vào hai chuỗi "_"?

câu trả lời hay nhất

Theo như tôi biết thì đó là một lý do lịch sử. Có (và có lẽ vẫn còn trên một số hệ thống ít người biết đến) shell gặp sự cố khi xử lý các chuỗi trống (và có thể cả các chuỗi bắt đầu bằng dấu gạch ngang). Vì vậy, một ý tưởng đơn giản là ngăn chặn hoàn toàn các chuỗi trống (và các chuỗi giống như tùy chọn) bằng cách thêm tiền tố. Tất cả các loại shell thông thường ngày nay đều không còn những vấn đề này nữa.

Về linux - lý do thêm "_" vào so sánh if "if [ "_$str"= "_"]; then ....; fi", chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/18850712/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress