Hôm trước, tôi cần di chuyển một thư mục chứa nhiều tệp từ một vị trí trên máy chủ Linux của mình sang một vị trí khác. Có một số cách tôi có thể làm điều này. Sử dụng cp đơn giản lệnh có thể đã thực hiện thủ thuật. Tuy nhiên, vì dữ liệu tôi đang sao chép là cơ sở dữ liệu và tôi muốn đảm bảo rằng việc sao chép được thực hiện hoàn hảo, tôi đã tìm kiếm trên Internet và tìm thấy một giải pháp cơ bản một dòng tuyệt vời cho việc này.
Tôi muốn di chuyển nội dung của thư mục / var / lib / mysql tới / opt / mysql . Đầu tiên, tôi đã thay đổi thành thư mục / var / lib / mysql :
# cd / var / lib / mysql
Sau đó, tôi chạy một lớp lót sau để làm điều kỳ diệu cho tôi.
# tar cf - * | (cd / opt / mysql; tar xfp -)
Tôi đã sử dụng lệnh hiển thị ở trên để sao chép các tệp cơ sở dữ liệu của mình. Những gì nó làm là nó kết hợp toàn bộ nội dung của thư mục hiện tại thành một tệp lưu trữ, thay đổi vị trí của thư mục đích ( / opt / mysql trong trường hợp này), và sau đó trích xuất kho lưu trữ. Trước khi bạn tiếp tục, hãy nhớ kiểm tra những thứ khác mà bạn có thể làm với tar :)