Làm cách nào để một lệnh chạy trong tất cả các thư mục con trong một tệp bó?
Bạn có thể dùng for /r
cho điều này
Sử dụng tệp bó sau:
for /r "starting_directory" %%a in (.) do (
pushd %%a
if exist icon.ico (
attrib -s -h -r desktop.ini
echo f | xcopy /h /y "%~dp0desktop.ini.txt" desktop.ini
attrib +s +h +a desktop.ini
)
popd
)
for / r - Lặp qua các tệp (Recurse thư mục con)
Cú pháp
FOR /R [[drive:]path] %%parameter IN (set) DO command
Chìa khóa
drive:path
: Cây thư mục nơi chứa các tập tin.
set
: Một tập hợp một hoặc nhiều tệp. Ký tự đại diện phải được sử dụng.
Nếu (bộ) là ký tự dấu chấm (.) Thì FOR sẽ
lặp qua mọi thư mục.
command
: Các lệnh để thực hiện, bao gồm bất kỳ
tham số dòng lệnh.
%% tham số`: Một tham số có thể thay thế:
trong một tệp bó sử dụng %% G (trên dòng lệnh% G)
Nguồn cho / r - Lặp qua các tập tin (Recurse thư mục con).
Đọc thêm