Lệnh rename
trong Linux được sử dụng để đổi tên các file hoặc đổi tên phần mở rộng của các file. Nó cũng hỗ trợ việc sử dụng biểu thức chính quy (Regular Expressions) để đổi tên các file.
Regular Expressions là một chuỗi các ký tự đại diện cho một mẫu cụ thể, giúp cho việc tìm kiếm, so khớp và thay thế dữ liệu trở nên dễ dàng hơn. Khi sử dụng trong lệnh rename
, các biểu thức chính quy được sử dụng để áp dụng các quy tắc đổi tên file theo mẫu cụ thể.
Ví dụ, để đổi tên tất cả các file có phần mở rộng .jpeg
thành phần mở rộng .jpg
, ta có thể sử dụng lệnh:
rename 's/\.jpeg$/.jpg/' *.jpeg
Trong đó, biểu thức chính quy 's/\.jpeg$/.jpg/'
được sử dụng để chỉ định quy tắc đổi tên. Biểu thức này có ý nghĩa là thay thế chuỗi ".jpeg"
ở cuối tên file bằng chuỗi ".jpg"
. Dấu $
được sử dụng để chỉ định rằng chuỗi "jpeg"
phải xuất hiện ở cuối tên file.
Các biểu thức chính quy trong lệnh rename
có thể khác nhau tùy vào mục đích đổi tên cụ thể của từng file. Việc sử dụng biểu thức chính quy giúp cho quá trình đổi tên file trở nên nhanh chóng và tiện lợi hơn.
Ví dụ đổi tên tất cả các file trong thư mục hiện tại có đuôi .txt thành .md:
rename 's/\.txt$/\.md/' *.txt
Ví dụ đổi tên tất cả các file có tên bắt đầu bằng “image” thành “photo”:
rename 's/^image/photo/' image*
Ví dụ đổi tên tất cả các file trong thư mục hiện tại có tên bắt đầu bằng chữ cái viết hoa thành tên bắt đầu bằng chữ cái viết thường:
rename 'y/A-Z/a-z/' *
Ở đây, y/A-Z/a-z/ sẽ thay thế tất cả các ký tự viết hoa từ A-Z thành ký tự viết thường tương ứng a-z trong tên file.