Làm thế nào để xem các tập tin trong nhị phân từ bash?


289

Tôi muốn xem nội dung của một tập tin trong thư mục hiện tại, nhưng ở dạng nhị phân từ dòng lệnh. Làm thế nào tôi có thể đạt được điều này?

Câu trả lời:


492

xxd hiện cả nhị phân và thập lục phân.

thùng rác:

xxd -b file

lục giác:

xxd file

13
sudo xxd /dev/diskn | lessbây giờ là điều yêu thích mới của tôi.
krs013

6
... và nó được cài đặt sẵn trên Mac OS X và trên Linux.
Sridhar Sarnobat

1
Điều này có lợi thế hơn "hexdump", nó cũng hiển thị biểu mẫu ASCII ở bên cạnh, giúp dễ dàng xác định vị trí tôi muốn xem.
Paŭlo Ebermann

1
Và để chuyển đầu ra sang tệp văn bản ASCII để tìm hiểu và tìm kiếm:xxd file > hex_dump_of_file.txt
Gabriel Staples

một bổ sung: xxd không chỉ dành cho shell linux. Tôi nghĩ rằng nó đi kèm với vim. Tôi đã cài đặt vim trên windows và tôi cũng thấy tôi có thể sử dụng xxd trong windows.
Tiina

182
hexdump -C yourfile.bin

trừ khi bạn muốn chỉnh sửa nó tất nhiên. Hầu hết các distro linux có hexdumpmặc định (nhưng rõ ràng không phải tất cả).


1
Tôi thích ý tưởng này, nhưng giống như các đề xuất khác, nó chỉ xuất ra hex. Rõ ràng điều này nhỏ gọn hơn nhiều so với nhị phân, nhưng tôi đang xử lý các tệp rất nhỏ nên nhị phân được ưa thích hơn. Có phải hex là cách duy nhất tôi có thể xem tệp?
adam_0

1
Làm thế nào nhỏ là các tập tin? Bất cứ điều gì qua một vài byte và bạn sẽ bắt đầu mất trí khi sử dụng nhị phân. Hex có ý nghĩa hơn nhiều đối với hầu hết mọi thứ. Nếu bạn không thoải mái với hex, chỉ cần xác định vị trí các byte mà bạn quan tâm và chuyển đổi chúng bằng máy tính hex.
Vịt

3
Tôi cần đảm bảo rằng tệp của mình đang nén chính xác và tôi không biết nó trông như thế nào trong hex (kích thước của mỗi đơn vị là 7 bit), vì vậy tôi sẽ phải bẻ số bằng tay.
adam_0

Bạn có phương pháp nào để xem văn bản từ tệp nhị phân không? Tôi có thể nhận được mã HEX, nhưng tôi nên giải mã nó thành văn bản người bình thường như thế nào?
Lukas Liesis

Điều gì về đầu ra của hexdump -C data.bin | hexdump -C
cyb0k

69
vi your_filename

đánh esc

:%!xxdđể xem các chuỗi hex, n :%!xxd -rđể trở về chỉnh sửa bình thường.


Tôi đã tìm thấy :%!xxdthêm các ký tự không mong muốn, tức là dòng mới vào tệp của tôi?
Quazi Irfan


13

Nếu bạn muốn mở tệp nhị phân (trong CentOS 7):

strings <binary_filename>

IMO đây là câu trả lời đơn giản nhất trong tất cả các câu trả lời. Tôi ước tôi có thể nâng cao nó hơn một lần.
Olumide

Câu trả lời tốt nhất xuống tay. Điều này chuyển đổi tệp nhị phân thành tệp JSON. Không phải tất cả các anh hùng đều mặc áo choàng, đó là sự thật
Shubham Pawar

11

sudo apt-get install bless

Bless là công cụ GUI có thể xem, chỉnh sửa, tìm kiếm và nhiều hơn nữa. Trọng lượng rất nhẹ của nó.


1
Đúng. Tôi thấy điều này dễ hơn Vim.
Paulb


3
$ echo -n 'Hello world!' | hd
00000000  48 65 6c 6c 6f 20 77 6f  72 6c 64 21              |Hello world!|
0000000c

2
hd là bí danh của "hexdump -C" ...?
JAR.JAR.beans

@ JAR.JAR.beans Đúng vậy. Tôi sử dụng nó vì nó dễ nhớ hơn.
Aalex Gabi

Và bởi vì nó có mặt theo mặc định trên một số hệ thống (Debian).
Aalex Gabi 16/03/18


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.