Tôi đang cố gắng sao chép một tập tin có dấu hai chấm và dấu chấm, ví dụ: với:
scp "test.json-2014-08-07T11:17:58.662378" remote:tmp/
scp test.json-2014-08-07T11\:17\:58.662378 remote:tmp/
và kết hợp với tập tin:
scp "file:///home/.../test.json-2014-08-07T11:17:58.662378" remote:tmp/
Tôi đoán là scp cố gắng diễn giải các phần của tệp dưới dạng máy chủ và / hoặc số cổng. Làm thế nào để tôi tránh điều đó?
Nếu tôi đổi tên tệp thành test.json thì nó scp test.json remote:tmp/hoạt động tốt, nhưng thậm chí không scp test*62378 remote:tmp/hoạt động.
*), không hoạt động. Nó được thực hiện trong shell, vì vậy chính xác cùng một văn bản (đối số) sẽ được chuyển đến scp. Bạn cần thay đổi văn bản (đối số) được truyền vào scp. (xem câu trả lời bên dưới, để biết thay đổi đối số văn bản thành.)
:là một ký tự tên tệp bất hợp pháp trên OSX, vì vậy nếu bạn cần chuyển các tệp này thì đó là điều cần lưu ý.
scp -- -1.JvSbrpchxuk.png user@example.com:/tmp