Cách xóa tệp và thư mục trong Linux Terminal

Fatmawati Achmad Zaenuri / Shutterstock.com
rm
và rmdir
lệnh xóa tệp và thư mục trên Linux, macOS và các Giống Unix các hệ điều hành. Chúng tương tự như del
và deltree
lệnh trong Windows và DOS. Các lệnh này rất mạnh và có khá nhiều tùy chọn.
Điều quan trọng cần lưu ý là các tệp và thư mục bị xóa bằng cách sử dụng rm
và rmdir
không được chuyển vào Thùng rác. Chúng ngay lập tức bị xóa khỏi máy tính của bạn. Nếu bạn vô tình xóa tệp bằng các lệnh này, cách duy nhất bạn có thể khôi phục chúng là từ bản sao lưu.
Cách xóa tệp bằng rm
Trường hợp đơn giản nhất là xóa một tệp trong thư mục hiện tại. Nhập rm
lệnh, một khoảng trắng, sau đó là tên của tệp bạn muốn xóa.
rm
Nếu tệp không có trong thư mục làm việc hiện tại, hãy cung cấp đường dẫn đến vị trí của tệp.
*
Bạn có thể chuyển nhiều tên tệp cho ?
. Làm như vậy sẽ xóa tất cả các tệp được chỉ định.
y
Quảng cáo Các ký tự đại diện có thể được sử dụng để chọn các nhóm tệp sẽ bị xóa. n
đại diện cho nhiều ký tự và dấu rm
đại diện cho một ký tự duy nhất. Lệnh này sẽ xóa tất cả các tệp hình ảnh png trong thư mục làm việc hiện tại.
-i
Lệnh này sẽ xóa tất cả các tệp có phần mở rộng là một ký tự. Ví dụ: điều này sẽ xóa File.1 và File.2, nhưng không xóa File.12.
-f
Nếu một tệp được bảo vệ chống ghi, bạn sẽ được nhắc trước khi tệp bị xóa. Bạn phải trả lời bằng -d
hoặc *
và nhấn Enter.
Để giảm rủi ro khi sử dụng ?
với các ký tự đại diện sử dụng dấu -r
(tương tác) tùy chọn. Điều này yêu cầu bạn xác nhận việc xóa từng tệp.
-r
-f
(lực lượng) tùy chọn ngược lại với tương tác. Nó không nhắc xác nhận ngay cả khi các tệp được bảo vệ chống ghi.
rm -rf
Cách xóa thư mục với rm
Để xóa một thư mục trống, hãy sử dụng rm -rf
(thư mục) tùy chọn. Bạn có thể sử dụng các ký tự đại diện (tree
và apt-get
) trong tên thư mục giống như bạn có thể làm với tên tệp.
tree
Quảng cáo Việc cung cấp nhiều hơn một tên thư mục sẽ xóa tất cả các thư mục trống đã chỉ định.
tree
Để xóa các thư mục không trống, hãy sử dụng dấu rm
(đệ quy) tùy chọn. Để rõ ràng, điều này sẽ xóa các thư mục và tất cả các tệp và thư mục con chứa bên trong chúng.
--one-file-system, --no-preserve-root, --preserve-root
Nếu một thư mục hoặc một tệp được bảo vệ chống ghi, bạn sẽ được nhắc xác nhận việc xóa. Để xóa các thư mục không trống và để loại bỏ các lời nhắc này, hãy sử dụng dấu rmdir
(đệ quy) và rm
(buộc) các tùy chọn với nhau.
rmdir
Ở đây cần phải có sự chăm sóc. Lỗi với dấu rmdir
lệnh có thể gây mất dữ liệu hoặc trục trặc hệ thống. Nguy hiểm , và thận trọng là chính sách tốt nhất. Để hiểu cấu trúc thư mục và các tệp sẽ bị xóa bởi dấu rm
, sử dụng rmdir
yêu cầu.
Sử dụng rmdir
để cài đặt gói này vào hệ thống của bạn nếu bạn đang sử dụng Ubuntu hoặc một bản phân phối dựa trên Debian khác. Trên các bản phân phối Linux khác, hãy sử dụng công cụ quản lý gói của bản phân phối Linux của bạn.
rmdir
Chạy rmdir
lệnh tạo ra một sơ đồ đơn giản để hiểu về cấu trúc thư mục và các tệp bên dưới thư mục mà nó được chạy.
rmdir
Bạn cũng có thể cung cấp một đường dẫn đến clients
lệnh khiến nó khởi động cây từ một thư mục khác trong hệ thống tệp.
projects
projects
lệnh cũng có rmdir
nhưng những tùy chọn này chỉ được đề xuất cho người dùng nâng cao. Nếu bạn gặp sự cố, bạn có thể vô tình xóa tất cả các tệp hệ thống của mình. Tham khảo ý kiến của lệnh trang hướng dẫn sử dụng để biết thêm thông tin.
Cách xóa thư mục với rmdir
Có một lệnh khác, được gọi là rmdir
,mà bạn có thể sử dụng để xóa các thư mục.Sự khác biệt giữa--ignore-fail-on-non-empty
vàrmdir
đó làwork/reports
chỉ có thể xóa các thư mục trống. Nó sẽ không bao giờ xóa các tập tin.
Trường hợp đơn giản nhất là xóa một thư mục trống. Như với work/quotes
, bạn có thể chuyển nhiều tên thư mục cho --ignore-fail-on-non-empty
hoặc một đường dẫn đến một thư mục.
Xóa một thư mục trong thư mục hiện tại bằng cách chuyển tên của nó thành work/reports
:
rmdir
Xóa nhiều thư mục bằng cách chuyển một danh sách tên đến --ignore-fail-on-non-empty
:
rmdir
Quảng cáo Xóa một thư mục không có trong thư mục hiện tại bằng cách chỉ định đường dẫn đầy đủ đến thư mục đó:
work/quotes
Nếu bạn cố gắng xóa một thư mục không trống, rmdir
sẽ cung cấp cho bạn một thông báo lỗi. Trong ví dụ sau -p
thành công và xóa dấu rmdir
nhưng nó từ chối xóa rmdir
thư mục vì nó chứa các tệp. rmdir
thư mục được giữ nguyên như ban đầu và các tệp trong đó vẫn chưa bị ảnh hưởng.
Khi rmdir
đưa ra lỗi Thư mục không trống, nó ngừng xử lý các thư mục đã được chuyển cho nó trên dòng lệnh. Nếu bạn đã yêu cầu nó xóa bốn thư mục và thư mục đầu tiên có tệp trong đó, hãy invoices
sẽ cung cấp cho bạn thông báo lỗi và không làm gì thêm. Bạn có thể buộc nó bỏ qua những lỗi này bằng dấu work
tùy chọn để các thư mục khác được xử lý.
Trong ví dụ sau, hai thư mục đã được chuyển đến cron
, đây là
rm file_1.txtvà
rm ./path/to/the/file/file_1.txt.
rm file_2.txt file_3.txttùy chọn đã được bao gồm trong lệnh.
rm *.pngthư mục có các tệp trong đó, vì vậy
rm *.?không thể xóa nó.
rm -i *.datlực tùy chọn
rm -f filenameđể bỏ qua lỗi và chuyển sang thư mục tiếp theo mà nó cần xử lý, đó là
rm -d directory. Đây là một thư mục trống và
rm -d directory1 directory2 /path/to/directory3xóa nó.
Đây là lệnh được sử dụng.
rm -r directory1 directory2 directory3
Bạn có thể sử dụng dấu
rm -rf directory(cha mẹ) tùy chọn để xóa một thư mục và xóa cả các thư mục mẹ của nó. Thủ thuật này hoạt động vì
sudo apt-get install treebắt đầu với thư mục đích và sau đó quay lại các bước đến thư mục mẹ. Thư mục đó bây giờ sẽ trống, vì vậy nó có thể bị xóa bởi
tree, và quá trình lặp lại bước sao lưu đường dẫn đã được cung cấp đến
tree path/to/directory.
Trong ví dụ sau, lệnh được chuyển tới
rmdir directoryLà:
rmdir directory1 directory2 directory3
Cả
rmdir /path/to/directoryvà
rmdir --ignore-fail-on-non-empty work/reports /work/quotesthư mục bị xóa, theo yêu cầu.
Cho dù bạn đang sử dụng Bash hay bất kỳ trình bao nào khác, Linux cung cấp các lệnh linh hoạt và mạnh mẽ để bạn xóa các thư mục và tệp ngay từ dòng lệnh đầu cuối. Một số người thích có quy trình làm việc xoay quanh thiết bị đầu cuối. Những người khác có thể không có lựa chọn trong vấn đề này. Chúng có thể đang làm việc trên các máy chủ mà không có GUI được cài đặt hoặc trên một phiên từ xa trên một hệ thống không có đầu như Raspberry Pi. Những lệnh này là hoàn hảo cho nhóm người đó.
Nhưng bất kỳ loại quy trình công việc nào bạn thích, các lệnh này rất tốt khi được đưa vào các tập lệnh shell. Nếu một tập lệnh được kích hoạt bởi dấu
rmdir -p work/invoicescông việc, nó có thể giúp tự động hóa các công việc dọn dẹp nhà cửa thông thường như xóa các tệp nhật ký không mong muốn. Nếu bạn điều tra trường hợp sử dụng đó, hãy nhớ sức mạnh của các lệnh này, kiểm tra mọi thứ cẩn thận và luôn duy trì bản sao lưu gần đây.
CÓ LIÊN QUAN: Máy tính xách tay Linux tốt nhất cho nhà phát triển và người đam mê
ĐỌC TIẾP- & rsaquo; Cách sử dụng BleachBit trên Linux
- & rsaquo; Cách sử dụng lệnh yes trên máy Mac
- & rsaquo; Cách xóa tệp an toàn trên Linux
- & rsaquo; Cách khôi phục các tệp đã xóa trên Linux bằng đĩa thử nghiệm
- & rsaquo; 5 trang web Mọi người dùng Linux nên đánh dấu
- & rsaquo; Cách tìm Spotify của bạn được gói vào năm 2021
- & rsaquo; Thứ Hai điện tử năm 2021: Ưu đãi tốt nhất của Apple
- & rsaquo; Thứ Hai điện tử năm 2021: Ưu đãi công nghệ tốt nhất

Dave McKay lần đầu tiên sử dụng máy tính khi băng giấy đục lỗ đang thịnh hành, và anh ấy đã lập trình kể từ đó. Sau hơn 30 năm trong ngành CNTT, anh hiện là một nhà báo công nghệ toàn thời gian. Trong sự nghiệp của mình, anh ấy đã làm việc với tư cách là một lập trình viên tự do, quản lý nhóm phát triển phần mềm quốc tế, quản lý dự án dịch vụ CNTT và gần đây nhất là Nhân viên bảo vệ dữ liệu. Bài viết của anh đã được xuất bản bởi howtogeek.com, cloudavvyit.com, itenterpriser.com và opensource.com. Dave là một nhà truyền giáo Linux và người ủng hộ nguồn mở.
Đọc đầy đủ tiểu sử