Linux
將二進制模式轉換為文本模式和反向選項
我將一個簡單的二進製文件轉換為一個文本文件:
od –t x1 Check.tar | cut –c8- > Check.txt
其內容類似於:
64 65 76 2f 6e 75 6c 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [...]
相反的方法是什麼——將 Check.txt 轉換為 Check.tar 作為原始文件?
od -An -vtx1 Check.tar > Check.txt
您需要
-v
或od
將壓縮相同字節的序列。反過來:
LC_ALL=C tr -cd 0-9a-fA-F < Check.txt | xxd -r -p > Check.tar
或者:
perl -ape '$_=pack "(H2)*", @F' Check.txt > Check.tar
如果您的目的是通過僅支持 ASCII 文本的通道傳輸文件,那麼可以使用專用工具,例如
uuencode
:tar cf - myfiles.* | xz | uuencode myfiles.tar.xz | that-channel
並在另一端恢復這些文件:
uudecode < file.uu
將重新創建
myfiles.tar.xz
.或者:
uudecode -o - < file.uu | xz -d | tar xf -
提取文件。