バッチファイルを使用して WinRar アーカイブにコメントを追加する

バッチファイルを使用して WinRar アーカイブにコメントを追加する

Winrar を使用すると、アーカイブにコメントを追加できます。フォルダーをバックアップするために簡単なバッチ スクリプトを使用しています。バッチ ファイルを使用して rar アーカイブにコメントを追加する方法はありますか?

できれば、外部ファイルを使用してコメントを読み込むのではなく、コマンド プロンプト ウィンドウからコメントを追加したいと思います。

これはバッチファイルです。

@echo off
"C:\Program Files\WinRAR\Rar.exe" -r  a -agYYYY-MM-DD-HH-MM "C:\Folder" "B:\Archive" -ep1 -r -m5
pause

C:\Folder 内のすべてを B:\Archive にアーカイブします

答え1

おそらくファイルを使って行うのが最も簡単ですが、その場で生成することもできます。例は次のようになります。

@echo off
SET /P comment=Comment:
echo %comment% > C:\Temp\message.txt
rar.exe a -zC:\Temp\message.txt "test.rar" "C:\TestFiles"
del C:\Temp\message.txt
pause

答え2

SET /P comment=Comment: seems to need a manual Enter-press, otherwise the command just waits...

皆さんのためにそれを解決しようとしましたが...行き詰まってしまいました。

そこで、もっと簡単で、同じくらい、いや、もっとうまく機能する別の解決策を考えました。

@echo off
echo Winrar Incremental Wallets Backup E: > C:\Temp\winrar.message.E.txt

次のオプションを追加して rar コマンドを実行します。-zC:\Temp\winrar.message.E.txt

きれいに保つために、バッチ ファイルを次のように終了することもできます。

del /F /Q C:\Temp\winrar.message.E.txt

私の解決策は以上です。

私は Windows 2019 を使用していますが、SET /P が適切に動作しません (または私があまりにも愚かです)*

  • SET /P に関しては、なぜ失敗するのか... 私には全く分かりません。何かご存知でしたら教えてください。この記事はとても興味深いものでしたが、それでも私にはうまくいきませんでした (https://www.robvanderwoude.com/battech_inputvalidation_setp.php彼が与えたコード:

    SETLOCAL EnableDelayedExpansion SET /P var="ここに何か入力してください:" ECHO .!var!. ECHO 引用符を削除します: .!var:"=!. REM 引用符の付いた変数を本当に拒否したい場合は... ECHO !var! | FIND """" >NUL && SET var= REM これで完了です。

また、次のことも試しました:SET /P comment=Comment: < nul必須の Enter キーをスキップしましたが、SET /P を使用する方法がない (私による) ため、Enter キーを押さなければならないという元の解決策を修正できるとは言えません。SET /PI の主な問題はECHO .!var!.、、、ECHO !var!などの操作ECHO %comment%ECHO %%comment%%実際には結果を返さないことです。変数は設定されていません。コメント文字列を手動で入力した場合にのみ、結果を得ることができます。そうでない場合は、混乱します :)

関連情報