web-dev-qa-db-ja.com

7-Zipコマンドライン-pスイッチがヘルプページに従って機能しない

Windowsバッチスクリプトでファイルタイプ.pcapngの暗号化を自動化できるようにしたい。私の現在の問題は、暗号化されたファイルを抽出するときに、「エラー。パスワードが間違っていますか?」という行に沿って何かを言ってエラーが発生することです。

私のスクリプトコード:

7z a -t7z captures.7z -pINSERTPASSWORDHERE -mhe *.pcapng

圧縮は期待どおりに機能し、-pスイッチのこの形式は7-Zipのヘルプページから取得されました。ただし、設定したパスワードは機能せず、上記のエラーが発生します。いくつか遊んだ後、私はなんとか以下のコードを機能させることができました...しかし、パスワードのプロンプトが表示されたくありません。スクリプトの値を使用してパスワードを設定したい。

7z a -t7z captures.7z -p INSERTPASSWORDHERE -mhe *.pcapng
4

-pにも問題がありました。パスワードに特殊文字が含まれているため、エスケープする必要があることがわかりました。

カンマ(,)または感嘆符(!)がある場合は、次のように文字をエスケープする必要があります。

,^,になり、!^!になります

詳細については、 ここ を参照してください。

1
spinner_den

完全にスクリプトを自動化するには:

作成:

7z -mhc=on -mhe=on -pPasswordHere a %ZipDest% %WhatYouWantToZip%

解凍:

7z x %ZipFile% -pPasswordHere

https://stackoverflow.com/a/39826601/3441182

1
FearlessCoward

私はどこかでパスワードの問題を抱えている別のユーザーについて読みました、そして彼らの回避策は途方もなく長いパスワードを使うことでした。 50文字以上の文字を試しましたが、スクリプトは機能しているようです。ヘルプページでパスワードの例として「secret」を使用している場合は、少し直感に反しているように見えます。

0
fixer1234

空のファイルがある場合でも、空のファイルは解凍され、パスワードの要求は行われません。

0
live-love