Windowsバッチスクリプトでファイルタイプ.pcapngの暗号化を自動化できるようにしたい。私の現在の問題は、暗号化されたファイルを抽出するときに、「エラー。パスワードが間違っていますか?」という行に沿って何かを言ってエラーが発生することです。
私のスクリプトコード:
7z a -t7z captures.7z -pINSERTPASSWORDHERE -mhe *.pcapng
圧縮は期待どおりに機能し、-p
スイッチのこの形式は7-Zipのヘルプページから取得されました。ただし、設定したパスワードは機能せず、上記のエラーが発生します。いくつか遊んだ後、私はなんとか以下のコードを機能させることができました...しかし、パスワードのプロンプトが表示されたくありません。スクリプトの値を使用してパスワードを設定したい。
7z a -t7z captures.7z -p INSERTPASSWORDHERE -mhe *.pcapng
-p
にも問題がありました。パスワードに特殊文字が含まれているため、エスケープする必要があることがわかりました。
カンマ(,
)または感嘆符(!
)がある場合は、次のように文字をエスケープする必要があります。
,
は^,
になり、!
は^!
になります
詳細については、 ここ を参照してください。
完全にスクリプトを自動化するには:
作成:
7z -mhc=on -mhe=on -pPasswordHere a %ZipDest% %WhatYouWantToZip%
解凍:
7z x %ZipFile% -pPasswordHere
私はどこかでパスワードの問題を抱えている別のユーザーについて読みました、そして彼らの回避策は途方もなく長いパスワードを使うことでした。 50文字以上の文字を試しましたが、スクリプトは機能しているようです。ヘルプページでパスワードの例として「secret」を使用している場合は、少し直感に反しているように見えます。
空のファイルがある場合でも、空のファイルは解凍され、パスワードの要求は行われません。