これが何を意味するのかわからないので、何かが足りないと思います。
例:
for /D %%A in (*) do "\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
その行は7Zip
のコマンドラインバージョンを使用して個々のフォルダーを圧縮するはずでしたが、このコンテキストでの%%A
の意味に困惑しています。
for
コマンドにはプレースホルダーが必要なので、後でクエリで使用するために変数を渡すことができます。ここでは、プレースホルダー%A
を使用していることを示しています。 %%A
を使用しているのは、バッチファイル内(これが見つかった場所だと思います)で%
は特別な意味を持っているため、%%
を2回実行する必要があるためです。 for
コマンドに渡される単一の%
コマンドの実行内容を実際に分解するために、コマンドには2つの部分があります。
for /D %%A in (*) do .....
この部分は、現在のフォルダー内のすべてのフォルダーについて、次のコマンドを実行して、%%A
を現在処理中のフォルダーの名前に置き換えます。
..... "\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
この部分が言うことは、コマンド"\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
を実行し、2つの%%A
を、現在処理している現在のレコードに置き換えることです。
それは変数です。
この特定の例では、 FORループのディレクトリオプション を使用して、ディレクトリを反復処理し、%% Aに割り当てています。
これもコマンドラインの例ではなく、バッチファイルの例です。バッチファイルでは%% Aを使用する必要がありますが、コマンドラインでは%Aを使用するだけです。
シナリオでは、%% Aは、「/」ループが反復しているもの(/ Dはディレクトリを示します)のプレースホルダーです。したがって、ループの各反復で、%% Aはディレクトリの1つです。
バッチコードでは%ではなく%%が表示されます。コマンドプロンプトでは、%%ではなく%が使用されます。
したがって、バッチファイルコードをコマンドプロンプトにコピーして、%%を使用して実行するとエラーが発生し、その逆も同様です。