Siêu dữ liệu là dữ liệu về dữ liệu. Kích thước biểu kiến là kích thước của dữ liệu quan trọng đối với người dùng máy tính thông thường. Nội dung (văn bản) của chữ cái, hình ảnh, video, v.v. của người dùng, tạo thành kích thước rõ ràng. Dữ liệu này không được lưu giữ tùy tiện trong máy tính. Dữ liệu có kích thước biểu kiến phải được lưu giữ theo kiểu kiểm soát. Nó phải được nhận dạng. Nó phải được hoàn thành. Có những yêu cầu khác cho nó. Cần thêm một số dữ liệu để đạt được những yêu cầu bổ sung này và dữ liệu bổ sung này là siêu dữ liệu.
Hãy nhớ rằng, chỉ có một thư mục trong một tập. Phần còn lại là các thư mục con. Thư mục gốc làm phát sinh các thư mục con, làm phát sinh các thư mục con khác đi xuống. Tuy nhiên, các thư mục con thường được gọi đơn giản là các thư mục. Và như vậy, chỉ có một cây thư mục.
Vì vậy, ls -s không hữu ích để lấy kích thước của một thư mục. Lệnh nào sau đó là hữu ích? - Lệnh du. du là viết tắt của Disk Usage. Nó in việc sử dụng đĩa của thư mục.
Bài viết này giải thích các tính năng khác nhau của lệnh du trong Linux, cung cấp các cách lập trình viên khác nhau để biết kích thước của các thư mục và thư mục con của chúng. Bash là shell được sử dụng cho các mẫu mã của bài viết này.
Nội dung bài viết
- du mà không có Lựa chọn hoặc Đối số
- Kích thước của các thư mục khác
- kích thước rõ ràng
- Lệnh sudo
- Loại trừ Mục nhập theo Kích thước
- loại trừ = PATTERN
- Phần kết luận
du mà không có Lựa chọn hoặc Đối số
Thư mục làm việc hiện tại là thư mục mà người dùng hiện đang làm việc. Lời nhắc thường hiển thị thư mục làm việc hiện tại. Nhập du mà không có bất kỳ tùy chọn và đối số nào, như vậy:
của
và sau đó nhấn phím Enter sẽ hiển thị mức sử dụng đĩa cho tất cả các thư mục con của thư mục làm việc hiện tại. Nó sẽ hiển thị thông tin này cho cây con của thư mục làm việc hiện tại. Một dấu chấm trên màn hình thể hiện thư mục làm việc hiện tại.
Mỗi đường dẫn của cây con được biểu diễn trong một dòng, tại màn hình. Mỗi dòng bắt đầu bằng kích thước của thư mục (là họ trong đường dẫn). Màn hình có thể giống như sau:
số 8./dir1/dir2/dir3/dir412./dir1/dir2/dir3
16./dir1/dir2
hai mươi./dir1
Lưu ý rằng không rõ kích thước tính bằng byte hay kilobyte hay megabyte hay gigabyte. Kilobyte ký hiệu, K có nghĩa là 1024 byte; Ký hiệu Megabyte, M có nghĩa là 1.048.576 byte; Gigabyte ký hiệu, G có nghĩa là 1.073.741.824 byte. Đối với các bội số được chỉ ra, tùy chọn -h (chuyển đổi) nên được sử dụng, như sau:
của -NSMàn hình sau đó sẽ trông như vậy:
8,0 nghìn./dir1/dir2/dir3/dir412 nghìn./dir1/dir2/dir3
16 nghìn./dir1/dir2
20 nghìn./dir1
Khi tùy chọn -h được sử dụng, các kích thước được cho là ở dạng có thể đọc được.
Lưu ý: với tùy chọn –all, lệnh du cũng sẽ cung cấp mức sử dụng đĩa cho các tệp; tuy nhiên, việc sử dụng đĩa cho các tệp sẽ không được giải quyết trong bài viết này.
Kích thước của các thư mục khác
Đường dẫn tuyệt đối điển hình cho một ổ đĩa Linux như sau:
/Trang Chủ/John/Nói/dirTwo/dirThree/dirFourĐầu tiên / là thư mục gốc. Thư mục này có các thư mục con ngay lập tức, bao gồm cả thư mục chính. Thư mục chính có thư mục của người dùng. Nếu tên của người dùng là John, thì anh ta có thể đặt tên cho thư mục của người dùng là john. Thư mục của người dùng được xác định bằng ~. Vì vậy, người dùng có thể sử dụng lệnh cd ~ để truy cập thư mục của mình từ bất kỳ thư mục nào. dirOne là một thư mục do người dùng tạo. Người dùng cũng có thể tạo các thư mục khác ở cấp độ này. dirTwo, dirThree và dirFour là các thư mục con của các thư mục trước của chúng, do người dùng tạo ra.
Người dùng có thể biết kích thước của bất kỳ thư mục nào khác và các thư mục con của nó (cây con) từ bất kỳ thư mục nào, bỏ qua đường dẫn tuyệt đối làm đối số. Ví dụ: nếu cần sử dụng đĩa,
/Trang Chủ/John/Nói/dirTwothì lệnh sẽ là:
của -NS /Trang Chủ/John/Nói/dirTwohoặc
của -NS~/Nói/dirTwonơi ~ đại diện cho thư mục của người dùng.
Để sử dụng một đường dẫn tương đối, người dùng phải ở trong thư mục mẹ tương ứng. Ví dụ: nếu lời nhắc đang hiển thị,
John@chủ nhà: ~/nói $nghĩa là người dùng đang ở thư mục, / home / john / dirOne, thì lệnh sau sẽ cho kết quả tương tự như lệnh trên:
của -NSdirTwoCác đường dẫn sẽ vẫn là tương đối. Để hiển thị cùng một thông tin cho thư mục hiện tại, không sử dụng đối số hoặc sử dụng dấu chấm.
Lược đồ này có thể được sử dụng để lấy kích thước của chỉ một thư mục, thư mục cuối cùng trong đường dẫn (trước đường dẫn). Có thể lấy kích thước của một thư mục ở giữa đường dẫn - hãy xem loại trừ = PATTERN bên dưới.
Tổng cộng
Tổng kích thước lớn của tất cả các thư mục liên quan có thể được tạo ra. Đối với tình huống trên, lệnh sẽ là:
của -NS --toàn bộkích thước rõ ràng
Kích thước biểu kiến thường nhỏ hơn dung lượng sử dụng đĩa. Tuy nhiên, trong một số trường hợp, kích thước biểu kiến lớn hơn mức sử dụng đĩa; lý do - xem sau. Lệnh để có được các kích thước rõ ràng cho đường dẫn tương đối ở trên sẽ là:
của -NS - kích thước rõ ràngdirTwoĐộ sâu tối đa
Với –max-depth = 0, du chỉ in kích thước của thư mục làm việc hiện tại; với du –max-depth = 1, du in kích thước của thư mục làm việc hiện tại và kích thước của tất cả các thư mục con cấp đầu tiên của nó; với –max-depth = 2, du in ra kích thước của thư mục làm việc hiện tại và kích thước của tất cả các thư mục con cấp một của nó và của tất cả các thư mục con cấp hai của nó; với –max-depth = 3, du sẽ in ra kích thước của thư mục làm việc hiện tại và tất cả các thư mục con cấp một của nó, và tất cả các thư mục con cấp hai và của tất cả các thư mục con cấp ba của nó; điều này tiếp tục với sự gia tăng giá trị của độ sâu tối đa. Một ví dụ về việc sử dụng nó là:
của -NS - độ sâu tối đa=2Lệnh sudo
Một trong những thư mục có các thư mục con riêng của nó trong thư mục gốc là var. Nếu người dùng gõ
của -NS /ở đâuvà nhấn Enter, anh ta sẽ nhận ra rằng quyền bị từ chối đối với một số thư mục. Đó là, anh ta không thể biết kích thước của một số thư mục. Quyền bị từ chối vì người dùng không phải là siêu người dùng. Người dùng siêu cấp có đặc quyền để xem kích thước (sử dụng đĩa) của các thư mục đó. Vì vậy, để người dùng có được đặc quyền đó, anh ta phải sử dụng lệnh sudo như sau:
sudo của -NS /ở đâuNếu shell yêu cầu người dùng nhập mật khẩu của mình, người dùng phải nhập mật khẩu và nhấn Enter. Với lệnh sudo, người dùng bình thường (lập trình viên) có thể thấy kích thước của tất cả các thư mục trong thư mục var và các thư mục tương tự.
Loại trừ Mục nhập theo Kích thước
Tùy chọn –threshold = SIZE sẽ không cho phép liệt kê các thư mục có kích thước nhỏ hơn SIZE. Đối với con đường,
/Trang Chủ/John/Nói/dirTwo/dirThree/dirFourvới lời nhắc lúc[email được bảo vệ]: ~ $, sau đó
của -NS --threshold= 12 nghìn dirOnetrong đó 12K có nghĩa là 12 kilobyte, sẽ không hiển thị dòng cho bất kỳ thư mục nào có mức sử dụng đĩa dưới 12K.
–Exclude = PATTERN
Tùy chọn và giá trị này có thể bỏ qua các dòng thư mục mà người dùng không muốn trong danh sách.
Để bỏ qua dòng cho thư mục cuối cùng, dirFour of the path
/Trang Chủ/John/Nói/dirTwo/dirThree/dirFourlệnh phải là:
của -NS --loại trừ= nói/dirTwo/dirThree/dirFour dirOneKết quả sẽ giống như,
4.0 nghìn dirOne/dirTwo/dirThree8.0 nghìn dirOne/dirTwo
12 nghìn dirOne
Lưu ý: kích thước chưa bao gồm kích thước của thư mục cấp cuối cùng (dirFour) của đường dẫn.
Để chỉ có kích thước của các thư mục độ sâu trên và cây con của chúng, không có các thư mục độ sâu thấp hơn trong tùy chọn. Vì vậy, với lệnh,
của -NS --loại trừ= nói/dirTwo/dirThree dirOneđầu ra sẽ giống như,
4.0 nghìn dirOne/dirTwo
8 nghìn dirOne
Lưu ý: các kích thước đã loại trừ kích thước của các thư mục đòn bẩy dưới của cây.
Hãy xem xét lại, liên kết tuyệt đối,
/Trang Chủ/John/Nói/dirTwo/dirThree/dirFourLệnh sau sẽ lấy việc sử dụng đĩa chỉ của thư mục dirTwo, là một thư mục nằm trong đường dẫn. Lệnh là:
của -NS --loại trừ=/Trang Chủ/John/Nói/dirTwo/ * /Trang Chủ/John/Nói/dirTwoĐối số có tất cả các thư mục trước đến thư mục được đề cập. Giá trị của loại trừ có tất cả các thư mục đứng trước, kết thúc bằng *, ngay sau thư mục được đề cập. * có nghĩa là tất cả các thư mục con ở cấp độ đó (và các cây con của chúng). Kết quả sẽ giống như,
5,0 nghìn/Trang Chủ/John/Nói/dirTwoPhần kết luận
Cố gắng biết kích thước của một thư mục bằng lệnh ls -s là sai lầm. Với nó, chỉ siêu dữ liệu của thư mục được lấy. Để biết việc sử dụng đĩa của một thư mục, nên sử dụng lệnh du. Khi được sử dụng với tùy chọn -h, kích thước của các thư mục có thể đọc được. Kích thước biểu kiến có thể nhận được bằng cách sử dụng tùy chọn kích thước biểu kiến. Không có bất kỳ tùy chọn và đối số nào, lệnh du chỉ hiển thị kích thước của tất cả các thư mục con của thư mục hiện tại, bao gồm cả kích thước của thư mục hiện tại. Đối số để du là con đường, có thể bắt đầu từ gốc. Các tùy chọn và một số giá trị của chúng quyết định chính xác thư mục nào được giải quyết. Lệnh sudo cung cấp cho người dùng thông thường các đặc quyền siêu người dùng theo mặc định.