Lệnh đầu tiên của bạn sẽ hoạt động mà không có khoảng trắng:
curl -T "{file1.txt,file2.txt}" ftp://XXX/ -user YYY
Cũng lưu ý dấu "/" trong các URL ở trên.
Đây là mục nhập thủ công của curl về tùy chọn "-T":
-T, - tải tập tin
Thao tác này sẽ chuyển tệp cục bộ đã chỉ định sang URL từ xa. Nếu không có phần tệp trong URL được chỉ định, Curl sẽ nối thêm tên tệp cục bộ. LƯU Ý rằng bạn phải sử dụng dấu / trên thư mục cuối để thực sự chứng minh với Curl rằng không có tên tệp hoặc curl sẽ nghĩ rằng tên thư mục cuối cùng của bạn là tên tệp từ xa sẽ sử dụng. Điều đó rất có thể sẽ khiến hoạt động tải lên thất bại. Nếu điều này được sử dụng trên máy chủ HTTP (S), lệnh PUT sẽ được sử dụng.
Sử dụng tên tệp "-" (một dấu gạch ngang) để sử dụng stdin thay vì một tệp đã cho. Thay phiên, tên tệp "." (một khoảng thời gian duy nhất) có thể được chỉ định thay vì "-" để sử dụng stdin ở chế độ không chặn để cho phép đọc đầu ra của máy chủ trong khi stdin đang được tải lên.
Bạn có thể chỉ định một -T cho mỗi URL trên dòng lệnh. Mỗi cặp URL -T + chỉ định nội dung cần tải lên và đến đâu. curl cũng hỗ trợ "globalbing" của đối số -T, nghĩa là bạn có thể tải nhiều tệp lên một URL bằng cách sử dụng cùng một kiểu toàn cầu URL được hỗ trợ trong URL, như sau:
curl -T "{file1,file2}" http://www.uploadtothissite.com
hoặc thậm chí
curl -T "img[1-1000].png" ftp://ftp.picturemania.com/upload/
Mở rộng "* .txt" không hoạt động vì curl chỉ hỗ trợ cú pháp giống như đối với URL:
Bạn có thể chỉ định nhiều URL hoặc một phần của URL bằng cách viết bộ phần trong dấu ngoặc nhọn như trong:
http: // trang web . {một, hai, ba} .com
hoặc bạn có thể nhận được chuỗi các chuỗi chữ và số bằng cách sử dụng [] như trong:
ftp://ftp.numericals.com/file[1-100[.txt
ftp://ftp.numericals.com/file[001-100[.txt (với các số 0 đứng đầu)
ftp://ftp.letters.com/file[az[.txt
[...]
Khi sử dụng các chuỗi [] hoặc {} khi được gọi từ dấu nhắc dòng lệnh, bạn có thể phải đặt URL đầy đủ trong dấu ngoặc kép để tránh trình bao can thiệp vào nó. Điều này cũng áp dụng cho các nhân vật khác được đối xử đặc biệt, ví dụ như '&', '?' và '*'.
Nhưng bạn có thể sử dụng lớp vỏ "bình thường" như thế này:
curl -T "{$(echo *.txt | tr ' ' ',')}" ftp://XXX/ -user YYY
(Ví dụ cuối cùng có thể không hoạt động trong tất cả các shell hoặc với bất kỳ loại tên tệp kỳ lạ nào.)
$(perl -e 'print join(",",@ARGV)' *.txt)
sẽ xử lý chính xác tên tệp có dấu cách.