Làm cách nào để thêm tiền tố vào tất cả các tệp và thư mục trong một thư mục? (các cửa sổ)


14

Lệnh sau chỉ thay đổi tên của tệp chứ không thay đổi thư mục.

for %a in (*) do ren "%a" "00_%a"


Bạn có hoàn toàn phải sử dụng một tập tin hàng loạt? Bạn không thể sử dụng một chương trình như Rename Master để làm điều này?
Dour High Arch

Câu trả lời:


15

Lệnh sau chỉ thay đổi tên của tệp chứ không thay đổi thư mục.

for %a in (*) do ren "%a" "00_%a"

Ghi chú:

  • Sử dụng fornhư trên là không nên.
  • Có khả năng các tập tin có thể được đổi tên nhiều lần.
  • Xem dưới đây cho lý do tại sao.

Sử dụng như sau trong một cmdvỏ:

for /f "tokens=*" %a in ('dir /b') do ren "%a" "00_%a"

Trong một tệp bó (thay thế %bằng %%):

for /f "tokens=*" %%a in ('dir /b') do ren "%%a" "00_%%a"

Ghi chú:

Điều quan trọng là bạn sử dụng FOR /Fvà không đơn giản FOR.

Tập FOR /Fhợp toàn bộ kết quả của DIRlệnh trước khi bắt đầu lặp, trong khi đơn giản FORbắt đầu lặp lại sau khi bộ đệm bên trong đầy, điều này làm tăng nguy cơ đổi tên cùng một tệp nhiều lần.

theo lời khuyên của dbenham trong câu trả lời của mình để thêm "văn bản" vào cuối nhiều tên tệp :


Đọc thêm


0

Để thực hiện điều này Đối với vòng lặp trên các thư mục (thư mục) thay vì các tệp, chỉ cần bao gồm công /Dtắc.

for /D %a in (*) do ren "%a" "00_%a"

Từ for /?:

Biến FOR / D% IN (set) Lệnh DO [tham số lệnh]

If set contains wildcards, then specifies to match against directory
names instead of file names.

renkhông hoạt động trên các thư mục. Hạn chế là "bạn không thể chỉ định một ổ đĩa hoặc đường dẫn khác cho Target.
DavidPostill

@DavidPostill Vâng, đó là một thói quen cũ, tôi đã thay đổi nó trở lại Ren.
Ƭᴇcʜιᴇ007

Bạn có thể thực hiện cả tệp và thư mục trong một lệnh (xem câu trả lời của tôi). Và tôi nghi ngờ for /dcũng có thể có vấn đề cố gắng xử lý các giá trị nhiều lần (cũng xem câu trả lời của tôi).
DavidPostill
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.