uuntuで中国語のパスワードを使って圧縮と解凍ファイルを作成します.

850 ワード

最近、小さな問題がありました.つまり、私は中国語の暗号圧縮ファイルを使ってウィンドウズを使った同僚に送った後、同僚がパスワードを使ってストレスを解消できないと言いました.
彼に伝える前から、彼のストレスが解けないと思っています.
中国語のwindowsの多くの設定はGBKなどです.
uuntuはほとんどUTF-8で、例えば私のです.

echo $LANG

zh_CN.UTF-8

このようにして同じ中国語を招いて、それぞれのシステム上で展示するのは全く同じですが、下の2進数は全く隣接していません.
私は日常の仕事のほとんどの時間がuuntuにありますので、回り道したくないです.システムコードを変えたくないです.それではトランスコードします.
簡単に次のzip圧縮コマンドを例に挙げます.

zip -P "$(echo -n     \!55555| iconv -f utf-8 -t gbk)" docx.zip 《    2.0》.docx

トランスコード部分:

echo -n     \!55555| iconv -f utf-8 -t gbk

iconvは多くのトランスコードツールを使っています.私自身もC/C++コード時によく使います.
Note:-fはfrom、-tはtoを表します.
これは、echoから出た文字列をUTF-8形式からGBK形式に変換した文字列です.
同じ理由で、GBK符号化のwindowsホストを解読して圧縮ファイルを暗号化する:

unzip -P "$(echo -n      \!111|iconv -f utf-8 -t gbk)" doc.zip