Di chuyển tất cả các tệp từ thư mục con nhiều cấp sang thư mục con cấp 2


0

Tôi đang tìm kiếm lệnh windows hoặc tập lệnh bó để giúp tôi, tôi đã đọc 3h / cố gắng tìm giải pháp tôi biết nó ở ngoài đó nhưng việc tôi không có kịch bản / lập trình không giúp được gì, hy vọng một số có thể giúp tôi.

Tôi có một tập hợp các thư mục và tệp mà tôi muốn đưa lên thư mục con cấp 2 mà trong ví dụ này sẽ là thư mục con1 & thư mục con1 & thư mục con 3, v.v.

D: thư mục> thư mục con1> thư mục con> thư mục con> tệp

     >subfolder2>subfolder>files

     >subfolder3>subfolder>files

     >subfolder4>subfolder>subfolder>files

Câu trả lời:


0

Mục tiêu của bạn là rủi ro - điều gì xảy ra nếu cùng một tên tệp tồn tại trong nhiều thư mục con? Chỉ có một phiên bản có thể tồn tại trong một thư mục nhất định.

Dấu nhắc lệnh sau đây, một lớp lót sẽ di chuyển các tệp theo yêu cầu của bạn và các tên trùng lặp sẽ ghi đè lên các tệp đã có với tên đó:

for /d %A in ("d:\folder\*") do @(pushd "%A"&(for /r /d %B in (*) do @move /y "%B\*" "%A" 2>nul)&popd)

Hoặc, như một tập lệnh bó:

@echo off
for /d %A in ("d:\folder\*") do (
  pushd "%A"
  for /r /d %B in (*) do move /y "%B\*" "%A" 2>nul
  popd
)

Hoàn hảo!. nó hoạt động đúng như dự định các tập tin là duy nhất để không có ghi đè sẽ xảy ra. Cảm ơn rât nhiều. tôi ước superuser / stackexchange đã xây dựng tính năng "mua cà phê" để thể hiện sự đánh giá cao không chỉ bằng lời nói. Cảm ơn một lần nữa.
dùng2827759
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.