Làm thế nào để chúng ta chỉ định nhiều mẫu bỏ qua cho lệnh `tree`?


105

Tôi cần in cấu trúc thư mục của hệ thống sản xuất của chúng tôi và tôi muốn xóa một số thư mục cụ thể khỏi cây ?

Làm thế nào để chúng tôi chỉ định nhiều mẫu bỏ qua cho treelệnh?

Câu trả lời:


141

Bạn chỉ cần cung cấp tất cả các mẫu cho -Ilệnh, cách nhau bởi |. Từ trang hướng dẫn:

-P pattern
      List  only  those files that match the wild-card pattern.  Note:
      you must use the -a option to also consider those  files  begin‐
      ning  with a dot `.' for matching.  Valid wildcard operators are
      `*' (any zero or more characters), `?' (any  single  character),
      `[...]'  (any single character listed between brackets (optional
      - (dash) for character  range  may  be  used:  ex:  [A-Z]),  and
      `[^...]'  (any  single character not listed in brackets) and `|'
      separates alternate patterns.

-I pattern
      Do not list those files that match the wild-card pattern.

Ví dụ

tree -I 'test*|docs|bin|lib'

bỏ qua 'docs', 'bin' và 'lib', thư mục và bất kỳ thư mục nào có 'test' trong tên, bất cứ nơi nào chúng có thể nằm trong hệ thống phân cấp thư mục. Rõ ràng, bạn có thể áp dụng các ký tự đại diện cho kết hợp mạnh mẽ hơn nhiều.


4
Nhìn vào trang người đàn ông, thấy một lời giải thích rất ngắn gọn cho "-Tôi", đã thất vọng. Không nghĩ rằng để nhìn một vài dòng trên. Cảm ơn. ;)
Tomislav Nakic-Alfirevic

Cách đặt bộ lọc để chỉ nhận các tệp .html, không có gì khác
Jitendra Vyas

Cảm ơn! Tôi sử dụng điều này để duyệt mã của tôi từ dòng lệnh với việc loại trừ node_modules.
truyền giáo

2
Làm thế nào một thư mục con như docs/subdoc/được loại trừ?
dùng1032531

@JitendraVyas: làm thế nào về tree --prune -P '*.html'Bạn cũng sẽ nhận được các thư mục, nhưng chỉ những người có .htmltệp trong đó.
fbicknel
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.