Câu trả lời:
Quy tắc kết hợp đầu tiên được áp dụng, vì vậy bao gồm .htaccesstrước khi loại trừ .*.
rsync -avP --include=".htaccess" --exclude=".*" . user@server:/dir
Bản sao này .htaccessở mọi cấp độ. Tôi không biết bạn dự định làm gì ./.htaccess; nếu bạn chỉ muốn khớp một tệp ở gốc của bản sao, hãy bắt đầu mẫu bằng a /. Nếu bạn chỉ muốn root .htaccess, bạn không thể sử dụng --include='/.htaccess' --exclude='.*', bởi vì quy tắc không root thực sự được ưu tiên ở đây, bạn cần phải làm một cái gì đó phức tạp hơn:
rsync -avP --exclude='/*/**/.htaccess' --include='.htaccess' --exclude=".*" . user@server:/dir
Đọc thêm: các nguyên tắc cơ bản cho bộ lọc rsync .
--includeđầu tiên, nhưng "./" ở phía trước "./.htaccess" là thứ đã giết chết nó.
                    .htaccesstệp, bạn sẽ phải --include='.*/'(tôi nghĩ) trước trận chung kết --exclude, xem thêm tại đây