Kể từ Windows 7, bạn có thể thực hiện việc này trong một dòng PowerShell.
powershell -C "gci | % {rni $_.Name ($_.Name -replace '120x90', '67x100')}"
Giải thích
powershell -C "..."
ra mắt một phiên PowerShell để chạy các lệnh trích dẫn. Nó trở về vỏ bên ngoài khi lệnh hoàn thành. -C
là viết tắt của -Command
.
gci
trả về tất cả các tệp trong thư mục hiện tại. Đó là bí danh cho Get-ChildItem
.
| % {...}
tạo đường dẫn xử lý từng tệp. %
là bí danh cho Foreach-Object
.
$_.Name
là tên của tệp hiện tại trong đường ống.
($_.Name -replace '120x90', '67x100')
sử dụng toán tử -replace
để tạo tên tệp mới. Mỗi lần xuất hiện của chuỗi con đầu tiên được thay thế bằng chuỗi con thứ hai.
rni
thay đổi tên của từng tệp. Tham số đầu tiên (được gọi là -Path
) xác định tệp. Tham số thứ hai (được gọi là -NewName
) chỉ định tên mới. rni
là bí danh cho Rename-Item.
Ví dụ
$ dir
Volume in drive C has no label.
Volume Serial Number is A817-E7CA
Directory of C:\fakedir\test
11/09/2013 16:57 <DIR> .
11/09/2013 16:57 <DIR> ..
11/09/2013 16:56 0 750_MOT_Forgiving_120x90.jpg
11/09/2013 16:57 0 751_MOT_Persecution_1_120x90.jpg
11/09/2013 16:57 0 752_MOT_Persecution_2_120x90.jpg
3 File(s) 0 bytes
2 Dir(s) 243,816,271,872 bytes free
$ powershell -C "gci | % {rni $_.Name ($_.Name -replace '120x90', '67x100')}"
$ dir
Volume in drive C has no label.
Volume Serial Number is A817-E7CA
Directory of C:\fakedir\test
11/09/2013 16:57 <DIR> .
11/09/2013 16:57 <DIR> ..
11/09/2013 16:56 0 750_MOT_Forgiving_67x100.jpg
11/09/2013 16:57 0 751_MOT_Persecution_1_67x100.jpg
11/09/2013 16:57 0 752_MOT_Persecution_2_67x100.jpg
3 File(s) 0 bytes
2 Dir(s) 243,816,271,872 bytes free
Nguồn
2013-09-11 15:59:44
cửa sổ và bất cứ điều gì chạy trong một .bat hoặc .cmd tập tin? – Blainer
Dude, nếu bạn muốn được giúp đỡ, bạn không thể mong đợi mọi người trở nên tâm linh. –