Khi nói đến việc nhanh chóng xử lý các tác vụ hàng ngày, dòng lệnh có thể vừa mạnh mẽ vừa nguy hiểm. Lấy các lệnh trong bài viết này làm ví dụ: lệnh rm cho phép bạn xóa (hoặc gỡ bỏ) các tệp tin. Lệnh rmdir làm điều tương tự với các thư mục (còn được gọi là folder). Nhưng hãy cẩn thận: Không giống như khi bạn di chuyển tệp tin vào Thùng rác từ Finder, bạn không thể khôi phục chúng nếu sử dụng các lệnh này.
Tuy nhiên, nếu bạn muốn tận dụng sức mạnh của Terminal trong macOS Sonoma hoặc các phiên bản cũ hơn, đây là một lệnh bạn không thể bỏ qua. Tôi sẽ chỉ cho bạn cách thêm một biện pháp bảo vệ để đảm bảo bạn chỉ xóa những tệp tin mà bạn thực sự muốn xóa.
Tại sao lại cần xóa tệp tin bằng dòng lệnh?
Xóa tệp tin bằng Finder không quá khó, cộng thêm bạn luôn có thể lấy lại tệp tin từ Thùng rác nếu thay đổi ý định. Vậy tại sao lại cần sử dụng dòng lệnh? Dưới đây là một số lý do:
- Bạn có thể sử dụng ký tự đại diện để xóa nhiều tệp tin nhanh chóng và hiệu quả.
- Bạn có thể xóa tệp tin khỏi Thùng rác khi gặp phải lỗi khó giải quyết.
- Bạn có thể xóa các tệp tin bị ẩn trong Finder. Những tệp tin này, có thể chứa cài đặt cho một số ứng dụng hoặc phần của macOS, có dấu chấm (.) trước tên và Finder không hiển thị chúng.
- Nếu bạn mất quyền truy cập vào Finder vì máy Mac của bạn bị lỗi, bạn có thể sử dụng dòng lệnh để khắc phục sự cố.
Cách xóa tệp tin
Việc xóa tệp tin bằng lệnh rm rất dễ dàng và nguy hiểm. Đây là một ví dụ. Sau khi khởi chạy Terminal (trong thư mục /Applications/Utilities của bạn) hãy nhập cd ~/Desktop để điều hướng đến thư mục Desktop. Để xóa một tệp tin trên Desktop, hãy nhập rm filename, thay thế filename bằng tên thực tế của tệp tin bạn muốn xóa. (Nếu tên tệp tin có khoảng trắng, bạn cần đặt tên trong dấu ngoặc kép: “For Example.txt”.) Nếu bạn có một tệp tin tên là MyFile.rtf mà bạn không bao giờ muốn nhìn thấy nữa, bạn có thể chạy lệnh này:
rm MyFile.rtf
Khi bạn nhấn Return, tệp tin sẽ biến mất! Mac không xác nhận xem bạn có muốn xóa tệp tin hay không. Nó sẽ biến mất, không thể khôi phục. Bạn không thể lấy lại nó.
Bạn thậm chí có thể xóa nhiều tệp tin trong một lệnh duy nhất. Nếu bạn có ba tệp tin trên Desktop mà bạn muốn xóa và bạn muốn xóa tất cả cùng một lúc, bạn có thể làm như sau (nếu tên tệp tin có khoảng trắng, bạn cần đặt tên trong dấu ngoặc kép: “For Example.txt”.):
rm MyFile.rtf MyCV.rtf MyGreatAmericanNovel.rtf
Một lần nữa, nhấn phím Return sẽ thực hiện việc xóa.
Một mạng lưới an toàn
Cần nhắc lại: lệnh này xóa tệp tin. Nó xóa vĩnh viễn. Bạn không thể lấy lại chúng. Bạn không thể nhấp vào biểu tượng Thùng rác và khôi phục các tệp tin mà bạn đã vô tình xóa.
Nhưng có một mạng lưới an toàn: đó là cờ -i (tương tác). Vì vậy, nếu bạn cảm thấy thận trọng, bạn có thể chạy các lệnh trên với cờ này như sau:
rm -i MyFile.rtf
Hoặc, trong trường hợp xóa nhiều tệp tin:
rm -i MyFile.rtf MyCV.rtf MyGreatAmericanNovel.rtf
Trong mỗi trường hợp, nhấn Return sẽ không thực sự kích hoạt lệnh rm, vì cờ -i hoạt động như một nút tạm dừng. Bạn sẽ thấy điều sau đây trong Terminal khi chạy các lệnh này:
IDG
Để tiếp tục, bạn cần nhập yes, hoặc chỉ cần y. Trong trường hợp nhiều tệp tin, bạn sẽ thấy một câu hỏi cho mỗi tệp tin. Được rồi, việc nhanh chóng nhập y rất dễ dàng, nhưng câu hỏi này nhằm mục đích khiến bạn dừng lại và suy nghĩ kỹ xem bạn có thực sự muốn xóa tệp tin đó hay không.
Cách xóa thư mục trống (hay còn gọi là folder)
Xóa thư mục hoặc folder hơi khác một chút. Nếu bạn cố gắng chạy lệnh rm trên một thư mục, bạn sẽ thấy thông báo sau:
Bạn không thể xóa thư mục bằng lệnh rm.
IDG
Có một lệnh đặc biệt để xóa thư mục: rmdir. Vì vậy, để xóa một thư mục có tên Archives, hãy chạy lệnh này (Nếu tên thư mục có khoảng trắng, bạn cần đặt tên trong dấu ngoặc kép: “For Example”.):
rmdir Archives
Bạn không thể sử dụng cờ -i với lệnh rmdir, vì vậy lệnh này hơi rủi ro hơn.
Lưu ý rằng lệnh này chỉ xóa các thư mục trống. Nếu bạn muốn xóa một thư mục và các tệp tin bên trong nó, hãy đọc tiếp.
Cách xóa mọi thứ trong một thư mục
Lệnh rm có một tùy chọn mạnh mẽ, -R (hoặc -r), còn được gọi là tùy chọn đệ quy. Khi bạn chạy lệnh rm -R trên một thư mục, bạn đang yêu cầu Terminal xóa thư mục đó, bất kỳ tệp tin nào nó chứa, bất kỳ thư mục con nào nó chứa và bất kỳ tệp tin hoặc thư mục nào trong các thư mục con đó, cho đến hết. Bạn nhập lệnh là rm-R directoryname, trong đó bạn thay thế directoryname bằng tên của thư mục bạn muốn xóa. (Nếu tên thư mục có khoảng trắng, bạn cần đặt tên trong dấu ngoặc kép: “For Example”.)
Ví dụ: giả sử bạn có một thư mục chứa đầy các kho lưu trữ, chứa các thư mục con và tệp tin. Việc xóa từng mục riêng lẻ từ Finder hoặc dòng lệnh có thể mất nhiều thời gian. Vì vậy, chỉ cần chạy lệnh như thế này:
rm -R Archives
Hãy nhớ rằng việc xóa này là cuối cùng. Nhưng bạn có thể sử dụng cờ -i để bảo vệ:
rm -iR Archives
Lệnh này sẽ yêu cầu bạn xác nhận việc xóa từng mục. Điều này có thể gây khó chịu, nhưng trừ khi bạn thực sự chắc chắn muốn xóa tất cả các tệp tin đó, tốt nhất là nên an toàn.
Không thể xóa Thùng rác trong Finder? Hãy sử dụng Terminal
Lệnh rm -R có thể hữu ích khi nào? Giả sử bạn không thể xóa Thùng rác trên máy Mac của mình. Một tệp tin có thể bị khóa hoặc bạn có thể không có quyền xóa một hoặc nhiều tệp tin. Loại lỗi này rất khó chịu, nhưng bạn có thể sử dụng dòng lệnh để cung cấp một giải pháp dễ dàng.
Trong Terminal, hãy nhập nội dung sau:
rm -R
Sau đó nhập một khoảng trắng.
Trong Finder, mở Thùng rác, sau đó kéo các mục nó chứa vào cửa sổ Terminal. Bạn sẽ thấy một hoặc nhiều tệp tin với đường dẫn như /Users/.Trash/file.txt.
Nếu có nhiều tệp tin, bạn có thể thấy rằng danh sách kết quả — tất cả trên một dòng dài, quấn trong cửa sổ Terminal — có thể rất dài. Nếu bạn hoàn toàn chắc chắn rằng bạn muốn xóa tất cả các mục này, hãy nhấn Return. Terminal sẽ xóa Thùng rác. Dòng lệnh chiến thắng!
IDG
Muốn tìm hiểu thêm? Hãy xem các bài viết của chúng tôi về việc điều hướng hệ thống tệp tin bằng dòng lệnh, học hỏi từ các trang hướng dẫn (man pages) và sao chép cũng như di chuyển tệp tin.