Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Cách sử dụng lệnh rename trong Linux

Trong bài này mình sẽ hướng dẫn cách sử dụng lệnh rename trong Linux, đây là lệnh dùng để đổi tên và thư mục trong Linux, bạn có thể đổi tên số lượng lớn.

Đổi tên cho nhiều file và thư mục bằng lệnh mv là một quá trình rắt rối vì nó liên quan đến các lệnh phức tạp như pipes và các vòng lặp. Nhưng với lệnh rename thì khác, nó đổi tên các file đã cho bằng cách thay thế biểu thức tìm kiếm trong tên bằng từ khóa được chỉ định.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

1. Cài đặt rename trong Linux

Lệnh rename có hai phiên bản khác nhau hoàn toàn, khác về cả cú pháp, tính năng và cách sử dụng. Trong bài viết này mình sẽ sử dụng version Perl.

Nếu máy tính của bạn chưa có phiên bản này thì hãy sử dụng lệnh atp để cài đặt nhé.

Ubuntu and Debian
sudo apt update
sudo apt install rename
CentOS and Fedora
sudo yum install prename
Arch Linux
yay perl-rename

2. Cách sử dụng lệnh rename trong Linux

Sau đây là cú pháp chung của lệnh đổi tên rename.

rename [OPTIONS] perlexpr files

Lệnh rename về cơ bản là một tập lệnh Perl. Nó sẽ đổi tên các file đã cho theo biểu thức chính quy perlexpr được chỉ định. Bạn có thể đọc về biểu thức chính quy Perl tại đây.

Mình cũng có bài viết về cú pháp Regular Expression trong Linux, mời bạn xem qua nhé.

Ví dụ: Lệnh sau sẽ thay đổi phần đuôi mở rộng của tất cả các file .css thành .scss:

rename 's/.css/.scss/' *.css

Hãy giải thích một chút về dòng lệnh này nhé:

  • 's/.css/.scss/' là toán tử thay thế, nó gồm có ba phần được phân tích thành s/search_pattern/replacement/. Trong đó:
    • s là từ khóa khai báo search.
    • search_pattern là chuỗi pattern tìm kiếm.
    • replacement là chuỗi sẽ replace cho pattern tìm kiếm.
  • *.css là một lệnh liệt kê tất cả các file kết thúc bằng .css.

Trước khi chạy lệnh trên để đổi tên thì bạn hãy xem kỹ lại một lần nữa bằng cách thêm tùy chọn -n, nó sẽ liệt kê những file sẽ được đổi tên, nếu bạn tháy ok thì hãy chạy lại lệnh trên.

rename -n 's/.css/.scss/' *.css

Kết quả sẽ có dạng như sau:

rename(file-0.css, file-0.scss)
rename(file-1.css, file-1.scss)
rename(file-2.css, file-2.scss)
rename(file-3.css, file-3.scss)
rename(file-4.css, file-4.scss)

Theo mặc định thì nếu bạn chọn một cái tên đã tồn tại trên hệ thống thì lệnh này sẽ không overwrite lại nội dung của file đó. Nếu bạn muốn overwrite lại thì hãy thêm tùy chọn -f nhé.

rename -f 's/.css/.scss/' *.css

Nếu bạn muốn in kết quả trả về tê những file bị đổi tên thì hãy thêm tùy chọn -v.

file-0.css renamed as file-0.scss
file-1.css renamed as file-1.scss
file-2.css renamed as file-2.scss
file-3.css renamed as file-3.scss
file-4.css renamed as file-4.scss

3. Các ví dụ lệnh rename trong Linux

Dưới đây là một vài ví dụ phổ biến về cách sử dụng lệnh rename Linux.

Thay thế khoảng trắng bằng dấu gạch dưới trong tên file:

rename 'y/ /_/' *

Chuyển đổi tên file chữ in thường:

rename 'y/A-Z/a-z/' *

Chuyển đổi tên file thành chữ in hoa:

rename 'y/a-z/A-Z/' *

Xóa chuỗi .bak ở phần cuối cùng của tên file.

rename 's/\.bak$//' *.bak

Chuyển phần mở rộng .jpeg và .JPG thành .jpg.

rename 's/\.jpe?g$/.jpg/i' *

Như vậy lệnh rename thực sự rất hữu ích trong Linux, nó giúp chúng ta đổi tên cho file một cách nhanh chóng và đổi trong số lượng lớn.

Cùng chuyên mục:

Cách dùng lệnh Users trong Linux để xem user đang online

Cách dùng lệnh Users trong Linux để xem user đang online

Nếu bạn đang là quản trị viên thì việc quản lý thông tin / xem…

Cách sử dụng lệnh Wall trong Linux

Cách sử dụng lệnh Wall trong Linux

Wall là một công cụ dòng lệnh giúp hiển thị thông báo đến tất cả…

Cách dùng lệnh Whereis trong Linux

Cách dùng lệnh Whereis trong Linux

Whereis là một tiện ích dòng lệnh command line, nó cho phép bạn tìm ..

Cách sử dụng lệnh Which trong Linux

Cách sử dụng lệnh Which trong Linux

Linux dùng lệnh which để xác định vị trí file thực thi của lệnh mà…

Cách sử dụng lệnh whoami trong Linux

Cách sử dụng lệnh whoami trong Linux

Giống như tên gọi của nó, lệnh whoami in tên người dùng đang chạy ...

Cách dùng lệnh zcat trong Linux

Cách dùng lệnh zcat trong Linux

Mặc dù tính năng nén file rất hữu ích vì nó giúp ta tiết kiệm…

Hiểu rõ hơn về chmod 777 trong Linux

Hiểu rõ hơn về chmod 777 trong Linux

Bạn đang xây dựng một website và sử dụng tính năng upload ...

Cách sử dụng lệnh tail trong Linux

Cách sử dụng lệnh tail trong Linux

Mặc định thì lệnh tail sẽ hiển thị 10 dòng cuối cùng của file, thông…

Cách sử dụng lệnh Head trong Linux

Cách sử dụng lệnh Head trong Linux

Trong quá trình quản trị dữ liệu trên Linux đôi khi bạn muốn xem nhanh…

Cách sử dụng lệnh Whatis trong Linux

Cách sử dụng lệnh Whatis trong Linux

Trong bài này chúng ta sẽ tìm hiểu lệnh whatis trong ...

Cách sử dụng lệnh kill trong Linux

Cách sử dụng lệnh kill trong Linux

Linux là một hệ điều hành rất nhanh nhưng không phải lúc nào nó không…

Cách dùng lệnh who trong Linux

Cách dùng lệnh who trong Linux

Who là một công cụ dòng lệnh command-line, được ...

Cách dùng lệnh basename trong Linux

Cách dùng lệnh basename trong Linux

basename là một tiện ích dòng lệnh (command line) dùng để lấy ...

Cách sử dụng lệnh gzip trên Linux

Cách sử dụng lệnh gzip trên Linux

Gzip là một trong những thuật toán nén file phổ biến nhất, nó cho phép…

Cách dùng lệnh wait trong Linux

Cách dùng lệnh wait trong Linux

Wait là lệnh dùng để đợi một thời gian cho tới khi công việc nào…

Cách dùng lệnh ping trong Linux

Cách dùng lệnh ping trong Linux

Lệnh ping là một trong những công cụ được sử dụng nhiều nhất để khắc…

Cách dùng lệnh sleep trong Linux

Cách dùng lệnh sleep trong Linux

sleep là một tiện ích command line cho phép lập trình viên ..

Các ví dụ học Bash Script trong Linux cơ bản nhất

Các ví dụ học Bash Script trong Linux cơ bản nhất

Bash Script đuọc xem là mã code lập trình trên Linux ...

Vòng lặp until trong Shell Script

Vòng lặp until trong Shell Script

Vòng lặp while trong Shell Script

Vòng lặp while trong Shell Script

Trong Linux script, vòng lặp while được sử dụng trong ...

Top