Khai Dân Trí
  • Home
  • Sức khỏe
    • All
    • Các bệnh

    Những điều bạn cần biết về COVID-19 nếu bạn bị viêm gan B

    Những điều cần biết về bệnh viêm cột sống dính khớp và thuốc chủng ngừa COVID-19

    Keytruda và Chi phí: Những gì bạn cần biết

    Stelara và chi phí: Những gì bạn cần biết

    • Các bệnh
  • Công nghệ
    • Điện thoại & Máy tính
  • Bách khoa toàn thư
No Result
View All Result
  • Home
  • Sức khỏe
    • All
    • Các bệnh

    Những điều bạn cần biết về COVID-19 nếu bạn bị viêm gan B

    Những điều cần biết về bệnh viêm cột sống dính khớp và thuốc chủng ngừa COVID-19

    Keytruda và Chi phí: Những gì bạn cần biết

    Stelara và chi phí: Những gì bạn cần biết

    • Các bệnh
  • Công nghệ
    • Điện thoại & Máy tính
  • Bách khoa toàn thư
No Result
View All Result
Khai Dân Trí
No Result
View All Result
Home Công nghệ Điện thoại & Máy tính

Cách sử dụng lệnh stat trên Linux

by Trọng Hiếu
25/03/2021
in Điện thoại & Máy tính
0
Fatmawati Achmad Zaenuri / Shutterstock

Linux stat lệnh hiển thị cho bạn nhiều chi tiết hơn ls làm. Hãy xem sau bức màn với tiện ích có thể cấu hình và thông tin này. Chúng tôi sẽ chỉ cho bạn cách sử dụng nó.

stat đưa bạn vào hậu trường

Các ls Lệnh rất tuyệt với những gì nó làm — và nó làm được rất nhiều thứ — nhưng với Linux, có vẻ như luôn có cách để đi sâu hơn và xem những gì nằm bên dưới bề mặt. Và thường, nó không chỉ là trường hợp nâng mép thảm. Bạn có thể xé các tấm ván sàn và sau đó đào một cái hố. Bạn có thể bóc vỏ Linux như một củ hành tây.

ls sẽ hiển thị cho bạn rất nhiều thông tin về tệp, chẳng hạn như quyền nào được đặt trên tệp, kích thước của tệp và liệu đó là tệp hay liên kết tượng trưng. Để hiển thị thông tin này ls đọc nó từ một cấu trúc hệ thống tệp được gọi là inode.

Mọi tệp và thư mục đều có inode. Inode giữ siêu dữ liệu về tệp, chẳng hạn như hệ thống tệp nào chặn nó chiếm và các dấu ngày tháng được liên kết với tệp. Inode giống như một thẻ thư viện cho tệp. Nhưng ls sẽ chỉ hiển thị cho bạn một số thông tin. Để xem mọi thứ, chúng ta cần sử dụng stat chỉ huy.

Giống ls , các stat lệnh có rất nhiều tùy chọn. Điều này làm cho nó trở thành một ứng cử viên sáng giá cho việc sử dụng bí danh. Khi bạn đã khám phá ra một tập hợp các tùy chọn cụ thể khiến stat cung cấp cho bạn đầu ra mà bạn muốn, bọc nó trong một bí danh hoặc hàm shell. Điều này làm cho nó thuận tiện hơn nhiều khi sử dụng và bạn không cần phải nhớ một loạt các tùy chọn dòng lệnh phức tạp.

LIÊN QUAN: Cách sử dụng lệnh ls để liệt kê tệp và thư mục trên Linux

So sánh nhanh

Hãy sử dụng ls để cung cấp cho chúng tôi một danh sách dài ( -l tùy chọn) với kích thước tệp có thể đọc được của con người ( -h Lựa chọn):

ls -lh ana.h

Từ trái sang phải, thông tin mà ls cung cấp là:

  • Ký tự đầu tiên là dấu gạch nối “-” và điều này cho chúng ta biết tệp là tệp thông thường và không phải là ổ cắm, liên kết biểu tượng hoặc một loại đối tượng khác.
  • Chủ sở hữu, nhóm và các quyền khác được liệt kê ở định dạng bát phân.
  • Số lượng liên kết cứng trỏ đến tệp này. Trong trường hợp này, và trong hầu hết các trường hợp, nó sẽ là một.
  • Chủ sở hữu tệp là dave.
  • Chủ nhóm thật tuyệt.
  • Kích thước tệp là 802 byte.
  • Tệp được sửa đổi lần cuối vào Thứ Sáu, ngày 13 tháng 12 năm 2015.
  • Tên tệp là ana.c.

Hãy cùng xem với stat :

stat ana.h

Thông tin chúng tôi nhận được từ stat Là:

  • Tập tin: Tên của tập tin. Thông thường, nó giống với tên mà chúng tôi đã chuyển cho stat trên dòng lệnh, nhưng Nó có thể khác nếu chúng ta đang xem xét một liên kết tượng trưng.
  • Kích thước: Kích thước của tệp tính bằng byte.
  • Khối: Số lượng hệ thống tệp khối mà tệp yêu cầu, để được lưu trữ trên ổ cứng.
  • Khối IO: Kích thước của khối hệ thống tệp.
  • Loại tệp: Loại đối tượng mà siêu dữ liệu mô tả. Các loại phổ biến nhất là tệp và thư mục, nhưng chúng cũng có thể là liên kết, ổ cắm hoặc đường ống được đặt tên.
  • Thiết bị: Số thiết bị ở dạng thập lục phân và thập phân. Đây là ID của ổ cứng mà tệp được lưu trữ.
  • Inode: Số inode. Đó là, số ID của inode này. Cùng với nhau, số inode và số thiết bị xác định duy nhất một tệp.
  • Liên kết: Con số này cho biết có bao nhiêu liên kết cứng trỏ đến tệp này. Mỗi liên kết cứng có inode riêng của nó. Vì vậy, một cách khác để suy nghĩ về con số này là có bao nhiêu inodes trỏ đến một tệp này. Mỗi khi một liên kết cứng được tạo hoặc xóa, con số này sẽ được điều chỉnh tăng hoặc giảm. Khi nó đạt đến 0, bản thân tệp đã bị xóa và inode bị xóa. Nếu bạn dùng stat trên một thư mục, con số này đại diện cho số lượng tệp trong thư mục, bao gồm cả “.” mục nhập cho thư mục hiện tại và mục nhập “..” cho thư mục mẹ.
  • Truy cập: Các quyền đối với tệp được hiển thị ở dạng bát phân và truyền thống của chúng rwx (đọc, ghi, thực thi các định dạng).
  • Uid: ID người dùng và tên tài khoản của chủ sở hữu.
  • Gid: ID nhóm và tên tài khoản của chủ sở hữu.
  • Truy cập: Dấu thời gian truy cập. Không đơn giản như nó có vẻ. Các bản phân phối Linux hiện đại sử dụng một lược đồ được gọi là relatime, cố gắng tối ưu hóa các ghi ổ cứng cần thiết để cập nhật thời gian truy cập. Nói một cách đơn giản, thời gian truy cập được cập nhật nếu nó cũ hơn thời gian sửa đổi.
  • Sửa đổi: Dấu thời gian sửa đổi. Đây là lúc tệp nội dung đã được sửa đổi lần cuối. (Thật may mắn, nội dung của tệp này đã được thay đổi lần cuối cách đây bốn năm cho đến ngày này.)
  • Thay đổi: Dấu thời gian thay đổi. Đây là lúc tập tin thuộc tính hoặc là nội dung đã được thay đổi lần cuối. Nếu bạn sửa đổi tệp bằng cách đặt các quyền mới cho tệp, dấu thời gian thay đổi sẽ được cập nhật (vì tệp thuộc tính đã thay đổi), nhưng dấu thời gian đã sửa đổi sẽ không được cập nhật (vì tệp nội dung không thay đổi).
  • Sinh: Dành riêng để hiển thị ngày tạo ban đầu của tệp, nhưng điều này không được triển khai trong Linux.

Hiểu về Dấu thời gian

Dấu thời gian nhạy cảm với múi giờ. Các -0500 ở cuối mỗi dòng cho thấy rằng tệp này đã được tạo trên máy tính theo múi giờ Giờ Phối hợp Quốc tế (UTC) trước múi giờ của máy tính hiện tại 5 giờ. Vì vậy, máy tính này chậm hơn 5 giờ so với máy tính đã tạo ra tệp này. Trên thực tế, tệp được tạo trên máy tính có múi giờ của Vương quốc Anh và chúng tôi đang xem nó ở đây trên máy tính theo múi giờ chuẩn miền Đông của Hoa Kỳ.

Việc sửa đổi và thay đổi dấu thời gian có thể gây ra nhầm lẫn vì đối với những người chưa quen, tên của chúng nghe như thể chúng có cùng nghĩa.

Hãy sử dụng chmod để sửa đổi các quyền đối với tệp trên một tệp có tên là ana.c. Chúng tôi sẽ làm cho nó có thể được viết bởi tất cả mọi người. Điều này sẽ không ảnh hưởng đến nội dung của tệp, nhưng nó sẽ ảnh hưởng đến các thuộc tính của tệp.

chmod +w ana.c

Và sau đó chúng tôi sẽ sử dụng stat để xem các dấu thời gian:

stat ana.c

Dấu thời gian thay đổi đã được cập nhật, nhưng dấu thời gian đã sửa đổi thì chưa.

Các sửa đổi dấu thời gian sẽ chỉ được cập nhật nếu nội dung của tệp được thay đổi. Các thay đổi dấu thời gian được cập nhật cho cả thay đổi nội dung và thay đổi thuộc tính.

Sử dụng thống kê với nhiều tệp

Để có báo cáo thống kê trên một số tệp cùng một lúc, hãy chuyển các tên tệp vào stat trên dòng lệnh:

stat ana.h ana.o

Để sử dụng stat trên một tập hợp các tệp, hãy sử dụng đối sánh mẫu. Dấu chấm hỏi “?” đại diện cho bất kỳ ký tự đơn nào và dấu hoa thị “*” đại diện cho bất kỳ chuỗi ký tự nào. Chúng tôi có thể nói stat để báo cáo về bất kỳ tệp nào được gọi là “ana” với phần mở rộng là một chữ cái, bằng lệnh sau:

stat ana.?

Sử dụng thống kê để báo cáo về hệ thống tệp

stat có thể báo cáo về trạng thái của hệ thống tệp, cũng như trạng thái của tệp. Các -f (hệ thống tập tin) tùy chọn cho biết stat để báo cáo về hệ thống tệp có tệp đó. Lưu ý rằng chúng tôi cũng có thể chuyển một thư mục chẳng hạn như “/” đến stat thay vì tên tệp.

stat -f ana.c

Thông tin stat cho chúng tôi là:

  • Tập tin: Tên của tập tin.
  • TÔI: ID hệ thống tệp trong ký hiệu thập lục phân.
  • Namelen: Độ dài tối đa cho phép đối với tên tệp.
  • Kiểu: Loại hệ thống tệp.
  • Kích thước khối: Lượng dữ liệu cần yêu cầu đọc để có tốc độ truyền dữ liệu tối ưu.
  • Kích thước khối cơ bản: Kích thước của mỗi khối hệ thống tệp.

Khối:

  • Toàn bộ: Tổng số tất cả các khối n của hệ thống tệp.
  • Miễn phí: Số khối miễn phí trong hệ thống tệp.
  • Có sẵn: Số lượng khối miễn phí có sẵn cho người dùng thông thường (không phải root).

Inodes:

  • Toàn bộ: Tổng số inode trong hệ thống tệp.
  • Miễn phí: Số inode miễn phí trong hệ thống tệp.

Hội nghị liên kết tượng trưng

Nếu bạn dùng stat trên một tệp thực sự là một liên kết tượng trưng, ​​nó sẽ báo cáo về liên kết. Nếu bạn muốn stat để báo cáo về tệp mà liên kết trỏ đến, hãy sử dụng -L (dereference) tùy chọn. Tập tin code.c là một liên kết tượng trưng đến ana.c . Hãy nhìn vào nó mà không có -L Lựa chọn:

stat code.c

Tên tệp hiển thị code.c chỉ đến ( -> ) ana.c. Kích thước tệp chỉ là 11 byte. Không có khối nào dành để lưu trữ liên kết này. Loại tệp được liệt kê dưới dạng liên kết tượng trưng.

Rõ ràng, chúng tôi không xem xét tệp thực tế ở đây. Hãy làm điều đó một lần nữa và thêm -L Lựa chọn:

stat -L code.c

Điều này hiện đang hiển thị chi tiết tệp cho tệp được trỏ đến bởi liên kết tượng trưng. Nhưng lưu ý rằng tên tệp vẫn được cung cấp là code.c. Đây là tên của liên kết, không phải tệp đích. Điều này xảy ra bởi vì đây là tên chúng tôi đã chuyển cho stat trên dòng lệnh.

Báo cáo Terse

Các -t nguyên nhân tùy chọn (terse) stat để cung cấp một bản tóm tắt cô đọng:

stat -t ana.c

Không có manh mối nào được đưa ra. Để hiểu rõ điều này — cho đến khi bạn ghi nhớ chuỗi trường — bạn cần tham chiếu chéo kết quả này với một stat đầu ra.

Định dạng đầu ra tùy chỉnh

Một cách tốt hơn để có được một bộ dữ liệu khác từ stat là sử dụng một định dạng tùy chỉnh. Có một danh sách dài các mã thông báo được gọi là chuỗi định dạng. Mỗi cái này đại diện cho một phần tử dữ liệu. Chọn những cái bạn muốn đưa vào đầu ra và tạo một chuỗi định dạng. Khi chúng tôi gọi stat và chuyển chuỗi định dạng cho nó, đầu ra sẽ chỉ bao gồm các phần tử dữ liệu mà chúng tôi yêu cầu.

Có nhiều bộ trình tự định dạng khác nhau cho tệp và hệ thống tệp. Danh sách cho các tệp là:

  • % a: Quyền truy cập trong bát phân.
  • % A: Quyền truy cập ở dạng con người có thể đọc được (rwx).
  • % b: Số khối được cấp phát.
  • % B: Kích thước tính bằng byte của mỗi khối.
  • % d: Số thiết bị ở dạng thập phân.
  • % D: Số thiết bị trong hệ thập lục phân.
  • % f: Chế độ thô trong hex.
  • % F Loại tệp.
  • % g: ID nhóm của chủ sở hữu.
  • % G: Tên nhóm của chủ sở hữu.
  • % h: Số lượng liên kết cứng.
  • %Tôi: Số inode.
  • % m: Điểm gắn kết.
  • % n: Tên tệp.
  • % N: Tên tệp được trích dẫn, với tên tệp được tham chiếu nếu nó là một liên kết tượng trưng.
  • % o: Gợi ý kích thước truyền I / O tối ưu.
  • %S: Tổng kích thước, tính bằng byte.
  • % t: Loại thiết bị chính trong hex, cho các tệp đặc biệt của thiết bị ký tự / khối.
  • % T: Loại thiết bị phụ trong hex, dành cho các tệp đặc biệt của thiết bị ký tự / khối.
  • % u: ID người dùng của chủ sở hữu.
  • % U: Tên người dùng của chủ sở hữu.
  • % w: Thời gian ra đời của tệp, con người có thể đọc được hoặc dấu gạch ngang “-” nếu không xác định.
  • % W: Thời gian ra đời của tệp, giây kể từ Kỷ nguyên; 0 nếu chưa biết.
  • % x: Thời điểm truy cập cuối cùng, con người có thể đọc được.
  • % X: Thời gian truy cập cuối cùng, giây kể từ Kỷ nguyên.
  • % y: Thời điểm sửa đổi dữ liệu cuối cùng, con người có thể đọc được.
  • % Y: Thời gian sửa đổi dữ liệu cuối cùng, giây kể từ Kỷ nguyên.
  • % z: Thời điểm thay đổi trạng thái cuối cùng, con người có thể đọc được.
  • % Z: Thời gian thay đổi trạng thái cuối cùng, giây kể từ Kỷ nguyên.

“Kỷ nguyên” là Unix Epoch, diễn ra vào 1970-01-01 00:00:00 +0000 (UTC).

Đối với hệ thống tệp, trình tự định dạng là:

  • % a: Số lượng khối miễn phí có sẵn cho người dùng thông thường (không phải root).
  • % b: Tổng số khối dữ liệu trong hệ thống tệp.
  • % c: Tổng số inodes trong hệ thống tệp.
  • % d: Số inode miễn phí trong hệ thống tệp.
  • % f: Số khối miễn phí trong hệ thống tệp.
  • %Tôi: ID hệ thống tệp trong hệ thập lục phân.
  • % l: Độ dài tối đa của tên tệp.
  • % n: Tên tệp.
  • %S: Kích thước khối (kích thước viết tối ưu).
  • %S: Kích thước của khối hệ thống tệp (đối với số khối).
  • % t: Loại hệ thống tệp trong hệ thập lục phân.
  • % T: loại hệ thống tệp ở dạng con người có thể đọc được.

Có hai tùy chọn chấp nhận các chuỗi trình tự định dạng. đó là --format và --printf. Sự khác biệt giữa chúng là --printf diễn giải trình tự thoát kiểu C, chẳng hạn như dòng mới n và tab t và nó không tự động thêm ký tự dòng mới vào đầu ra của nó.

Hãy tạo một chuỗi định dạng và chuyển nó vào stat. Các trình tự định dạng sẽ sử dụng là %n cho tên tệp, %s cho kích thước của tệp và %F cho loại tệp. Chúng tôi sẽ thêm n thoát chuỗi đến cuối chuỗi để đảm bảo mỗi tệp được xử lý trên một dòng mới. Chuỗi định dạng của chúng tôi trông giống như sau:

"File %n is %s bytes, and is a %Fn"

Chúng tôi sẽ chuyển cái này cho stat sử dụng --printf Lựa chọn. Chúng tôi sẽ hỏi stat để báo cáo về một tệp được gọi là code.c và một tập hợp các tệp phù hợp ana.?. Đây là lệnh đầy đủ. Lưu ý dấu bằng “=” giữa --printf và chuỗi định dạng:

stat --printf="File %n is %s bytes, and is a %Fn" code.c ana/ana.?

Báo cáo cho mỗi tệp được liệt kê trên một dòng mới, đó là những gì chúng tôi yêu cầu. Tên tệp, kích thước tệp và loại tệp được cung cấp cho chúng tôi.

Các định dạng tùy chỉnh cung cấp cho bạn quyền truy cập vào nhiều phần tử dữ liệu hơn những phần tử được đưa vào tiêu chuẩn stat đầu ra.

Kiểm soát hạt mịn

Như bạn có thể thấy, có rất nhiều phạm vi để trích xuất các phần tử dữ liệu cụ thể mà bạn quan tâm. Bạn có thể cũng có thể thấy lý do tại sao chúng tôi khuyên bạn nên sử dụng bí danh cho các câu thần chú dài hơn và phức tạp hơn.

Tags: CáchdunglệnhLinuxstatsựtrên
Trọng Hiếu

Trọng Hiếu

Xem thêm

Điện thoại & Máy tính

Cách tạo và sử dụng nhãn trong Danh bạ Google

13/08/2022
Điện thoại & Máy tính

Cách đặt lại PC Windows 11 bằng Cài đặt

13/08/2022
Điện thoại & Máy tính

Cách gắn thư mục dưới dạng Drive trong Windows 11

13/08/2022
Điện thoại & Máy tính

Cách tắt tính năng đo từ xa của ứng dụng trong Windows 11

12/08/2022
Điện thoại & Máy tính

10 ứng dụng tạo logo miễn phí tốt nhất cho Android năm 2022

11/08/2022
Điện thoại & Máy tính

Cách đặt Báo thức & Hẹn giờ trong Windows 11

11/08/2022
Điện thoại & Máy tính

Cách bảo vệ bằng mật khẩu tệp RAR trên Windows 11

11/08/2022
Điện thoại & Máy tính

Các trang web proxy YouTube miễn phí: Bỏ chặn YouTube vào năm 2022

11/08/2022
Điện thoại & Máy tính

Cách chuyển đổi video 4K sang MP4 – Bộ chuyển đổi video tốt nhất năm 2022

11/08/2022

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Bài viết mới

Những điều bạn cần biết về COVID-19 nếu bạn bị viêm gan B

13/08/2022

Những điều cần biết về bệnh viêm cột sống dính khớp và thuốc chủng ngừa COVID-19

13/08/2022

Keytruda và Chi phí: Những gì bạn cần biết

13/08/2022

Stelara và chi phí: Những gì bạn cần biết

13/08/2022
Khai Dân Trí

Website phổ biến kiến thức, tin tức và bình luận, nhằm nâng cao dân trí.

No Result
View All Result
  • Home
  • Sức khỏe
    • Các bệnh
  • Công nghệ
    • Điện thoại & Máy tính
  • Bách khoa toàn thư

© 2022 JNews - Premium WordPress news & magazine theme by Jegtheme.