Giả sử bạn không biết những gì bạn đang làm và cố gắng sao lưu một số ổ đĩa cứng
dd if=/dev/disk1 of=/dev/disk2
Vâng, nếu bạn trộn chúng lên (chuyển đổi nếu và của), nó sẽ ghi đè lên dữ liệu mới với dữ liệu cũ, không có câu hỏi nào.
Mix up tương tự có thể xảy ra với các kho lưu trữ. Và thẳng thắn với hầu hết các tiện ích dòng lệnh.
Nếu bạn muốn một ví dụ về một ký tự trộn lẫn sẽ làm sập hệ thống của bạn, hãy xem kịch bản này: Bạn muốn di chuyển tất cả các tệp trong thư mục hiện tại sang một ký tự khác:
mv -f ./* /path/to/other/dir
Hãy chấp nhận thực tế là bạn đã học cách sử dụng ./
để biểu thị thư mục hiện tại. (Tôi làm) Vâng, nếu bạn bỏ qua dấu chấm, nó sẽ bắt đầu di chuyển tất cả các tệp của bạn. Bao gồm các tập tin hệ thống của bạn. Bạn thật may mắn vì bạn đã không làm điều này. Nhưng nếu bạn đọc ở đâu đó rằng với 'sudo -i', bạn sẽ không bao giờ phải gõ sudo nữa, bạn đã đăng nhập bằng root ngay bây giờ. Và bây giờ hệ thống của bạn đang ăn chính nó ngay trước mắt bạn.
Nhưng một lần nữa tôi nghĩ những thứ như ghi đè lên các tệp mã quý giá của mình bằng rác, bởi vì tôi đã nhầm lẫn một ký tự hoặc do tôi trộn lẫn thứ tự các tham số, sẽ gặp nhiều rắc rối hơn.
Giả sử tôi muốn kiểm tra mã trình biên dịch mã mà gcc đang tạo:
gcc -S program.c > program.s
Giả sử tôi đã có một chương trình và tôi sử dụng hoàn thành TAB. Tôi đang vội và quên TAB hai lần:
gcc -S program.c > program.c
Bây giờ tôi có mã trình biên dịch chương trình trong chương trình của mình và không còn mã c nữa. Đó ít nhất là một trở ngại thực sự đối với một số người, nhưng đối với những người khác, đó là bắt đầu lại từ đầu.
Tôi nghĩ rằng đây là những người sẽ gây ra "tác hại" thực sự. Tôi không thực sự quan tâm nếu hệ thống của tôi gặp sự cố. Tôi sẽ quan tâm về dữ liệu của tôi bị mất.
Thật không may, đây là những sai lầm sẽ phải được thực hiện cho đến khi bạn học cách sử dụng thiết bị đầu cuối với các biện pháp phòng ngừa thích hợp.