Các for
lệnh cần một giữ chỗ để bạn có thể vượt qua cùng các biến để sử dụng sau trong truy vấn, chúng tôi đang nói với nó sử dụng giữ chỗ %A
, lý do mã bạn nhìn thấy công dụng %%A
là bởi vì bên trong một tập tin thực thi (mà tôi giả định là nơi bạn tìm thấy này) các %
có một ý nghĩa đặc biệt, vì vậy bạn phải thực hiện hai lần %%
để nó được chuyển sang một lần duy nhất %
để được truyền vào for
lệnh
Để thực sự phá vỡ những gì lệnh đang làm, có hai phần của lệnh:
for /D %%A in (*) do .....
Những gì phần này nói là cho mọi thư mục trong thư mục hiện tại thực hiện lệnh sau thay thế %%A
bằng tên của thư mục hiện đang xử lý.
..... "\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
Những gì phần này nói là thực thi lệnh "\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
và thay thế hai %%A
bản ghi bằng bản ghi hiện tại mà chúng ta đang xử lý.