2012-08-25 40 views
32

Giả sử tôi có một số lượng lớn tệp trong một thư mục có phần mở rộng là .txt.Làm cách nào để thay đổi phần mở rộng của nhiều tệp trong một thư mục?

Làm thế nào tôi có thể thay đổi phần mở rộng của tất cả những tập tin này để .c sử dụng các môi trường dòng lệnh sau:

  • Powershell trong Windows
  • cmd/DOS trong Windows
  • Các thiết bị đầu cuối trong bash
+2

Không chắc tại sao điều này đã được đóng lại (câu hỏi có vẻ khá rõ ràng với tôi) nhưng trong mọi trường hợp cơ bản cùng một câu hỏi có thể được tìm thấy (mở) ở đây: http://stackoverflow.com/questions/13382638/how-can-i-bulk-rename-files- in-powershell/13382966 –

+0

@OhadSchneider Sắp xếp ... không may là t itle (mặc dù không phải là trường hợp thực sự sử dụng) của một trong đó là "Làm thế nào tôi có thể đổi tên hàng loạt tập tin trong PowerShell?", đó là rộng hơn nhiều, như là câu trả lời. Câu trả lời của Smi ở đây là tiền cho các phần mở rộng. Tuy nhiên, không biết tại sao điều này được đánh dấu quá rộng. ¯ \\ _ (ツ) _/¯ – ruffin

Trả lời

64

Trên Windows, chuyển đến thư mục mong muốn và nhập:

ren *.txt *.c 

Trong PowerShell, nó là tốt hơn để sử dụng phương pháp Path.ChangeExtension thay vì -replace (nhờ Ohad Schneider cho nhận xét):

Dir *.txt | rename-item -newname { [io.path]::ChangeExtension($_.name, "c") } 

Đối với Linux (Bash):

for file in *.txt 
do 
mv "$file" "${file%.txt}.c" 
done 
Các vấn đề liên quan