Điểm:1

Không thể thoát dấu chấm bằng dấu gạch chéo ngược, Tại sao?

lá cờ in

Vì vậy, sau đây là các lệnh tôi đã chạy:

$ ~/Documents: touch ball.txt bool-txt bowl.txt bull.txt
$ ~/Tài liệu: ls . | grep b..l\.txt
banh.txt
bool-txt
bát.txt
bull.txt

tôi đã không mong đợi bool-txt có mặt trong đầu ra, bởi vì tôi đã thoát khỏi dấu chấm nhưng nó vẫn không coi đó là dấu chấm theo nghĩa đen. Tôi làm sai ở đâu?

qwr avatar
lá cờ kr
qwr
đó có thể là thoát vỏ, hãy thử đặt nó vào một chuỗi
qwr avatar
lá cờ kr
qwr
nói chung, phân tích cú pháp ls dễ bị lỗi, nhưng có lẽ không liên quan đến câu hỏi này
Som Shekhar Mukherjee avatar
lá cờ in
Vâng cái này `ls . | grep b..l\.txt` hoạt động và cả `ls này. | b..l"\.".txt`. Đây có phải là những gì bạn có nghĩa là? Bạn có thể giải thích ý nghĩa của những gì đang xảy ra ở đây hoặc chỉ cho tôi các tài nguyên có liên quan. @qwr
Điểm:5
lá cờ kr
qwr

Tôi chắc chắn đây là bản sao của một số câu hỏi nhưng tôi không thể tìm thấy nó. Trên Unix SE https://unix.stackexchange.com/questions/583428/why-do-i-have-to-quote-an-escaped-character-in-a-regular-expression-for-grep-bu

Khi bạn sử dụng grep b..l\.txt, vỏ chuyển đổi \. vào trong . vì vậy grep nhận được b..l.txt, sau đó nó giải thích . như bất kỳ ký tự nào.

Để ngăn chặn điều này, phương pháp đơn giản nhất là cung cấp cho grep một chuỗi như grep 'b..l\.txt', thì trình bao sẽ không thoát khỏi dấu chấm. Lưu ý rằng dấu ngoặc đơn và dấu ngoặc kép làm những việc khác nhau trong bash nhưng điều đó không thành vấn đề trong trường hợp này. Ngoài ra, hãy sử dụng dấu gạch chéo ngược kép để trình bao thoát khỏi dấu gạch chéo ngược dưới dạng ký tự chữ và grep nhận chính xác \..

Som Shekhar Mukherjee avatar
lá cờ in
Cũng có thể giải thích điều này "nói chung, phân tích cú pháp ls dễ bị lỗi"? Nó sẽ thực sự hữu ích.
qwr avatar
lá cờ kr
qwr
câu chuyện dài https://unix.stackexchange.com/q/128985/171025

Đă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.