Câu hỏi tại sao các tệp thiết bị không mở bằng vim hoặc nano


root@heena:/dev/disk/by-label# ls
PENDRIVE  System\x20Reserved

bây giờ khi tôi mở PENDRIVE bằng vim hoặc nano, tôi nhận được một tập tin rỗng.

nhưng tôi hiểu rằng tất cả mọi thứ là tập tin trong linux bao gồm cả pendrive.

Câu hỏi là tại sao nano hoặc vim không thể mở và hiển thị nội dung thực của tệp, nếu ngay cả thiết bị được coi là tệp trong linux?


1
2018-01-07 11:57


gốc




Các câu trả lời:


Bạn nói đúng, mọi thứ đều là tệp trong Linux. Nhưng vim hoặc nano không thể xử lý các loại tệp đó. Vì vậy, khi bạn mở chúng, chúng sẽ trống. Trên thực tế, chúng chứa thông tin theo cách không phải là con người có thể đọc được.

Nếu bạn cố gắng mở với các emacs như

sudo emacs <file>

Bạn nhận được tin nhắn,

File exists, but can not be read.

Nếu bạn muốn xem thử bên trong là gì,

sudo cat /dev/disk/by-level/<file>

Bạn có thể thấy các ký tự ngẫu nhiên khác nhau.

Chú thích:

Tệp tại /dev/disk/by-level/<file> thực sự là một liên kết mềm tới /dev/sdbx. Bạn có thể thấy bằng cách sử dụng điều này trong thiết bị đầu cuối,

$ ls -l /dev/disk/by-level/<file>
lrwxrwxrwx 1 root root 10 Jan  7 17:33 /dev/disk/by-label/<file> -> ../../sdbx

2
2018-01-07 12:12