Tôi đang cố gắng viết một tệp bó windows để kiểm tra tệp văn bản nào có trong thư mục A và thư mục B; và nếu một tệp chỉ có trong thư mục A, tôi muốn tạo một tệp văn bản có cùng tên trong thư mục B sẽ chỉ chứa một số văn bản tùy ý nhưng không chạm vào các tệp hiện có khác.
để làm cho mọi thứ rõ ràng
Thư mục A:
- file1.txt
- file2.txt
- file3.txt
Thư mục B:
- file2.txt
- file3.txt
Mã phải kiểm tra và xem file1.txt bị thiếu trong thư mục B và tạo một tệp có cùng tên chứa văn bản "Hello World", nhưng không thay đổi theo bất kỳ cách nào các tệp khác.
Tôi biết điều này có thể sẽ sử dụng if tồn tại và cho các chức năng nhưng tôi không thể quay đầu lại được ... cho đến nay, đây là những gì tôi nghĩ ra
for %%a in ("%~dp0\folder1\*.*") do if not exist "%~dp0\folder2\%%a" (
echo Hello World
)>"%~dp0\folder2\%%a"
EDIT Chỉ cần thêm giải pháp được đề xuất bởi McDonald (không phải nhà hàng) vào câu đố của tôi. Điều này chỉ hoạt động.
for %%a in ("%~dp0\folder1\*.*") do if not exist "%~dp0\folder2\%%~NXa" (
echo Hello World
)>"%~dp0\folder2\%%~NXa"
for %%a in ("%~dp0\folder1\*.*") do if not exist "%~dp0\folder2\%%~NXa" ( echo Hello World )>"%~dp0\folder2\%%~NXa"
... là mã chính xác để sử dụng có lẽ vì vậy hãy kiểm tra nó.