Seçeneklere verilen argümanlar

Tüm seçenekler özellikleri etkinleştiren veya devre dışı bırakan basit boole bayrakları değildir. Bazıları için, belki bir kullanıcı adı veya bir dosyaya giden yol gibi veriler aktarmanız gerekir. Bunu önce seçeneği sonra argümanı, aralarında bir boşluk bırakarak yazarak yaparsınız. Örneğin, bir sunucuya HTTP POST ile rastgele bir veri dizesi göndermek istiyorsanız:

curl -d arbitrary http://example.com

ve seçeneğin uzun formunu kullansanız bile aynı şekilde çalışır:

curl --data arbitrary http://example.com

Kısa seçenekleri argümanlarla kullandığınızda, aslında verileri boşluk ayırıcı olmadan da yazabilirsiniz:

curl -darbitrary http://example.com

Boşluklu argümanlar

Bazen bir seçeneğe bir argüman iletmek istersiniz ve bu argüman bir veya daha fazla boşluk içerir. Örneğin, curl'ün kullandığı kullanıcı aracısı (user-agent) alanını, o üç boşluk dahil olmak üzere tam olarak I am your father olacak şekilde ayarlamak istersiniz. O zaman komut satırında curl'e iletirken dizenin etrafına tırnak işaretleri koymanız gerekir. Kullanılacak tam tırnak işaretleri kabuğunuza/komut isteminize bağlı olarak değişir, ancak genellikle çoğu yerde çift tırnak işe yarar:

curl -A "I am your father" http://example.com

Tırnak işareti kullanmamak, örneğin komut satırını şöyle yazarsanız:

curl -A I am your father http://example.com

… curl'ün kullanıcı aracısı dizesi olarak yalnızca 'I' kullanmasına neden olur ve am, your ve father dizeleri, seçenek olduklarını belirtmek için - ile başlamadıkları ve curl yalnızca seçenekleri ve URL'leri işlediği için bunun yerine ayrı URL'ler olarak ele alınır.

Dizenin kendisinin çift tırnak içermesini sağlamak için (örneğin sunucuya bir JSON dizesi göndermek istediğinizde yaygındır), tek tırnak kullanmanız gerekebilir (tek tırnakların aynı şekilde çalışmadığı Windows hariç). JSON dizesi { "name": "Darth" } gönderelim:

curl -d '{ "name": "Darth" }' http://example.com

Veya tek tırnak olayından kaçınmak isterseniz, verileri curl'e bir dosya aracılığıyla göndermeyi tercih edebilirsiniz, bu da ekstra tırnak içine almayı gerektirmez. Yukarıda belirtilen verileri içeren dosyaya 'json' dediğimizi varsayalım:

curl -d @json http://example.com