You alter the structure of the file do you can't easy do this. Maybe something like this can help (but you will loose newline characters:
awk '' binary_format.txt >out_file
я использовал xxd
для создания шестнадцатеричного представления файла (любой файл, например .jpg, .docx, .zip и т. д.), как это, ..
$ xxd -p original_file.zip > hexa_format.txt
и повернуть вспять
$ xxd -r -p hexa_format.txt > original_file.zip
если кто-то считает, что это не правильно, поправьте меня. во всяком случае, это не мой вопрос. Теперь я должен преобразовать их в двоичный файл вместо гекса. так что команда идет так, если я прав.
$ xxd -p -b original_file.zip > binary_format.txt
мой вопрос,
как я могу вернуть его обратно в исходный файл из двоичного файла (binary_format.txt), созданного из приведенной выше команды. Страница man xxd говорит, что это невозможно сделать (в последней строке).
-b | -bits Switch to bits (binary digits) dump, rather than hexdump. This option writes octets as eight digits "1"s and "0"s instead of a normal hexadecimal dump. Each line is preceded by a line number in hexadecimal and followed by an ascii (or ebcdic) representa‐ tion. The command line switches -r, -p, -i do not work with this mode.
Если это не может быть сделано, есть ли другая команда, которая может это сделать. как обводить несколько комадов так.
You alter the structure of the file do you can't easy do this. Maybe something like this can help (but you will loose newline characters:
awk '' binary_format.txt >out_file
You will have to write your own binary to hex function ...
cut -f2-8 -d' ' infile | tr -d '\n' | tr ' ' '\n' | while read l; do echo -n $(bin_to_hex($l)) >> outfile (( ++n )) (( n % 60 == 0)) && echo "" >> outfile done
This should output the same format as -p
which can then be run through -r
. If you read the man page for xxd
you will read that there is no -r
for -b
. It says so on the excerpt that you included in your question.