Dường như định dạng mặc định là thu được như sau:
hexdump -e '"%07.7_Ax\n"' -e '"%07.7_ax " 8/2 "%04x " "\n"'
Từ man hexdump
:
Implement the -x option:
"%07.7_Ax\n"
"%07.7_ax " 8/2 "%04x " "\n"
Nếu bạn muốn hiểu định dạng hexdump
's, bạn sẽ phải đọc những hướng dẫn, nhưng dưới đây là một đoạn đi bộ ngắn qua định dạng trước:
Phần đầu tiên là %07.7_Ax\n
là phần hiển thị dòng cuối cùng chỉ chứa giá trị offset. Theo hướng dẫn sử dụng:
_a[dox] Display the input offset, cumulative across input files, of the
next byte to be displayed. The appended characters d, o, and x
specify the display base as decimal, octal or hexadecimal
respectively.
_A[dox] Identical to the _a conversion string except that it is only
performed once, when all of the input data has been processed.
- Thứ hai: bây giờ chúng tôi hiểu phần
"%07.7_ax "
. 8/2
có nghĩa là 8 lần lặp lại và 2 byte cho các mục sau, cụ thể là, "%04x "
. Cuối cùng, sau đó, chúng tôi có một dòng mới: "\n"
.
Tôi không thực sự chắc chắn làm thế nào bạn muốn 21 byte của bạn, có lẽ điều này sẽ làm:
hexdump -e '"%07.7_Ax\n"' -e '"%07.7_ax " 21/1 "%02x " "\n"'
và bạn biết làm thế nào để thoát khỏi sự bù đắp, nếu cần thiết:
hexdump -e '21/1 "%02x " "\n"'
Nguồn
2014-11-01 23:17:52
Bạn có thể thử 'hexdump -e '21/1 "% 02x" "\ n"' ' –
@gniourf_gniourf nó hoạt động! cảm ơn bạn. –
Vui lòng tìm câu trả lời cũng chứa thông tin về định dạng mặc định. –