for command needs a placeholder so you can pass along variables for use later in the query, we are telling it use the placeholder
%A, the reason the code you saw uses
%%A is because inside a batch file (which I assume is where you found this) the
% has a special meaning, so you must do it twice
%% so it gets turned in to a single
% to be passed to the
To actually break apart what the command is doing, there is two parts to the command:
for /D %%A in (*) do .....
What the this part says is for every folder in the current folder execute the following command replacing
%%A with the name of the currently processing folder.
..... "\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
What this part says is execute the command
"\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A" and replace the two
%%A's with the current record we are processing.