Đây là cấu trúc thư mục:
/a/
/a/b/
/a/c/
Tôi muốn sao chép mọi thứ, NGOẠI TRỪ cho thư mục con / a / c /.
scp -rp myserver:/a . # this will copy everything
Q: Làm thế nào tôi có thể chỉ định một thư mục để lại trong lệnh scp?
Đây là cấu trúc thư mục:
/a/
/a/b/
/a/c/
Tôi muốn sao chép mọi thứ, NGOẠI TRỪ cho thư mục con / a / c /.
scp -rp myserver:/a . # this will copy everything
Q: Làm thế nào tôi có thể chỉ định một thư mục để lại trong lệnh scp?
Câu trả lời:
Tôi không nghĩ bạn có thể, nhưng bạn có thể sử dụng rsync? Một cái gì đó như thế này:
rsync -a --exclude=a/c myserver:/a .
Tôi nghĩ rằng đây có thể là cách thực hiện chính xác vì vậy bạn vẫn đang sử dụng SSH, tôi chưa tìm thấy cách nào để làm điều đó với scp - nhưng sử dụng rsync trên ssh có thể giải quyết nó.
rsync -e 'ssh -ax' -av --exclude /a/c myserver:/a .
Nếu bạn sử dụng công tắc -n thì nó sẽ tạo ra một quy trình khô khan:
rsync -e 'ssh -ax' -av --exclude /a/c -n myserver:/a .
-rz
: -e "ssh -i private.pem" -rz 'users@server:/full/path/'
.