Computer >> Máy Tính >  >> Lập trình >> C ++

Tệp cầu vồng trong Linux bằng C ++

p> Tập tin lấp lửng còn được gọi là Mở rộng tên đường dẫn. Đây là phương pháp nhận dạng ký tự đại diện các mẫu trong linux và sau đó tìm phần mở rộng đường dẫn tệp dựa trên các mẫu này.


Mẫu ký tự đại diện là các chuỗi được sử dụng để chọn nhiều tệp dựa trên các mẫu.

Các mẫu ký tự như “?” , “[]”, “*” Được sử dụng để đối sánh mẫu và tách nhiều tệp.

Ví dụ về các ký tự đại diện được sử dụng trong tệp Globbing:

  • Dấu hoa thị (*): * pattern được sử dụng khi chúng ta cần so khớp 0 hoặc nhiều ký tự sau chuỗi trong tên tệp.

Ví dụ: tệp * sẽ khớp với tất cả các tệp với tệp tên, tệp, tệp2 hoặc với bất kỳ thứ gì sau tệp.

  • Dấu hỏi (?): Các ? mẫu được sử dụng khi chúng ta cần khớp chính xác một ký tự sau chuỗi trong tên tệp.

Ví dụ: tệp * sẽ khớp với tên tệp là tệp1, nhưng không khớp với tệp01 hoặc tệp.

  • Dấu ngoặc vuông ([]): Mẫu [] được sử dụng khi chúng ta cần so khớp một số ký tự cụ thể sau chuỗi trong tên tệp. Trong dấu ngoặc vuông, bạn có thể đề cập đến số lượng cũng như phạm vi để đối sánh.

Ví dụ: tệp [2] sẽ khớp với tất cả các tên tệp có chính xác 2 ký tự nữa ở cuối như tệp01 nhưng không phải tệp1 hoặc tệp211.
Tệp [1- 3] sẽ khớp với tất cả các tên tệp có thêm 1, 2 hoặc 3 ký tự ở cuối. Giống như tệp1, tệp01, tệp211 nhưng không nhiều hơn thế.

Một điều bổ sung nữa có thể nằm trong dấu ngoặc là sự phủ định của một số lượng cụ thể, nó được thực hiện bằng cách sử dụng ! hoặc dấu chấm than, điều này loại trừ số lượng thay vì số lượng ký tự cụ thể.

Ví dụ: tệp [! 2] sẽ khớp với tất cả các tên tệp có nhiều ký tự lớn hơn 2. Giống như tệp1, tệp211 nhưng không phải tệp01.

Đây là cách triển khai các lệnh này trong các lệnh linux -

Chúng tôi đã tạo một số tệp trong một thư mục -

tệp, tệp1, tệp01, tệp211, tệp.

Sau đó, sử dụng tất cả các mô hình lấp lánh trên đó. Đây là kết quả -

Tệp cầu vồng trong Linux bằng C ++