Foren: 雑談場 (Thread #43069)

コマンドラインを利用した解凍時にパスワードを誤った際のゴミファイルについて (2020-10-03 14:10 by まっつん1124 #85952)

解凍用のバッチファイルを以下のプログラムで作成しました。
C:\tempに解凍先を設定したバッチファイルですが
パスワードを誤投入した際にも解凍先に同じファイル名のゴミデータが作成されます。
このゴミデータを発生させないような手順などございましたら教えてください。

@echo OFF
::----------------------
::変数設定
::----------------------

::7z.exeカレントパス設定
set Current_Pass="c:\program files\7-zip"

::対象となるファイル(ドラッグ&ドロップにて取得)
set target=%1

::解凍先設定
set base="c:\temp"


::----------------------
::特定のフォルダにファイルだけを解凍
::----------------------

::カレントパスへ移動
cd %Current_Pass%

set /P USR_INPUT_STR="パスワードを入力してください:"
echo 入力したパスワードは %USR_INPUT_STR% です

::解凍実施

7z.exe e -p%USR_INPUT_STR% -o%base% -ir!*.* %target%

pause

Reply to #85952×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

Re: コマンドラインを利用した解凍時にパスワードを誤った際のゴミファイルについて (2020-10-04 23:07 by まっつん1124 #85957)

すみません、自己解決しました。
完全性チェックを入れると確認できました。
お騒がせしました。
---------------------------------------------
::解凍前のパスワードテスト(完全性チェック)
7z.exe t -p%USR_INPUT_STR% -ir!*.* %target%

::解凍パスワードが合っている場合のみ解凍
if %ERRORLEVEL%==0 (
echo 解凍しました
7z.exe e -p%USR_INPUT_STR% -y -o%base% -ir!*.* %target%
) else (
echo パスワードが間違っています
)
---------------------------------------------

メッセージ #85952 への返信
> 解凍用のバッチファイルを以下のプログラムで作成しました。
> C:\tempに解凍先を設定したバッチファイルですが
> パスワードを誤投入した際にも解凍先に同じファイル名のゴミデータが作成されます。
> このゴミデータを発生させないような手順などございましたら教えてください。
>
> @echo OFF
> ::----------------------
> ::変数設定
> ::----------------------
>
> ::7z.exeカレントパス設定
> set Current_Pass="c:\program files\7-zip"
>
> ::対象となるファイル(ドラッグ&ドロップにて取得)
> set target=%1
>
> ::解凍先設定
> set base="c:\temp"
>
>
> ::----------------------
> ::特定のフォルダにファイルだけを解凍
> ::----------------------
>
> ::カレントパスへ移動
> cd %Current_Pass%
>
> set /P USR_INPUT_STR="パスワードを入力してください:"
> echo 入力したパスワードは %USR_INPUT_STR% です
>
> ::解凍実施
>
> 7z.exe e -p%USR_INPUT_STR% -o%base% -ir!*.* %target%
>
> pause
Reply to #85952

Reply to #85957×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden