Tôi là một sinh viên tốt nghiệp có quyền truy cập vào một nhóm nghiên cứu Linux tại trường đại học của tôi. Trong những năm qua, tôi đã tích lũy được nhiều thư mục - tôi đoán "thư mục" là thuật ngữ Windows / Mac? - trong thư mục nhà của tôi ( ~
). Khi tôi đang làm việc trên một mô phỏng mới, tôi tạo một thư mục mới trong thư mục chính của mình bằng cách sử dụng mkdir
và sau đó chạy mô phỏng trong thư mục đó.
Nhưng theo thời gian, tôi đã tích lũy được nhiều thư mục như vậy trong thư mục nhà của tôi. Bây giờ tôi muốn chuyển một số thư mục vào thư mục con. Ví dụ, tôi có thể muốn tạo một thư mục mới có tên gọi simulations1_10
và sau đó di chuyển các thư mục simulation1
, simulation2
, ..., simulation10
vào thư mục đó - vì vậy mà thư mục gốc của thư mục chính của tôi được tổ chức nhiều hơn nữa.
Để làm điều này, tôi có thể sử dụng cp
. Ví dụ:
cp -r simulation1/ simulations1_10/
sẽ sao chép thư mục simulation1
(và tất cả nội dung của nó) vào thư mục simulations1_10
. Sau đó tôi có thể loại bỏ simulation1
.
Nhưng, chuyển tôi không vượt qua ranh giới hệ thống tập tin, vì vậy mv
là nhiều nhanh hơn cp
. ( mv
tất nhiên cũng cho phép tôi tránh bước loại bỏ.) Ví dụ:
mv simulation1/ simulations1_10/
thực hiện thủ thuật một cách nhanh chóng (và không giống như cp
, mv
được đệ quy theo mặc định). Theo câu trả lời cho câu hỏi này , mv
nhanh hơn nhiều vì nó "chỉ cập nhật cơ sở dữ liệu inode trong các thư mục khác nhau."
Câu hỏi của tôi là, có bất kỳ nguy hiểm trong việc sử dụng mv
?
Tôi nghĩ rằng một điều nguy hiểm là nếu mv
bị gián đoạn (do mất điện, người dùng nhấn Ctrl+ C, v.v.) trong khi chuyển, tệp có thể bị hỏng ở cả nguồn và đích. Điều này có đúng không?
Ngoài ra, nếu tôi sử dụng mv
nhiều , có khả năng "cơ sở dữ liệu inode" sẽ được cập nhật quá thường xuyên, gây ra sự phân mảnh đĩa hoặc các vấn đề về ổ cứng / hệ thống tập tin khác không?