Cố gắng đổi tên một loạt tệp.Đổi tên tệp đệ quy Mac OSX
tôi có thể đổi tên bất kỳ trường hợp của foo với thanh trong thư mục hiện có:
ls . | awk '{print("mv "$1" "$1)}' | sed 's/foo/bar/2' | /bin/sh
tôi có thể thêm gì để làm cho nó đệ quy?
Edit/Giải pháp của tôi
Tôi không biết/hiểu thứ loại vỏ này vì vậy tôi đã làm điều đó với một số (khá bẩn) Ruby:
5.times do
Dir["**/*"].each do |f|
file_name = File.absolute_path f
should_rename = file_name.include? "yolo"
new_file_name = file_name.gsub("yolo", "#{@project_name}")
File.rename(f, new_file_name) if (should_rename and File.exists? f)
end
end
Bạn cũng có thể lọc tập hợp các tệp sẽ được thay thế bằng tên. Ví dụ tôi cần phải đệ quy đổi tên tất cả các tệp * .java thành * .txt nên tôi đã làm như vậy: 'tìm. -nhập tên "* .java" - \ đổi tên \ .java | \ .txt | ' {} + ' –