Bu sözdiziminde curl kullanıyorum:
curl -o myfile.jpg http://mysite.com/myfile.jpg
Bu komutu iki kez çalıştırırsam, iki dosya alırım:
myfile.jpg
myfile-1.jpg
Varsa dosyanın üzerine yazmasını istediğimi CURL'a nasıl söyleyebilirim?
Bu sözdiziminde curl kullanıyorum:
curl -o myfile.jpg http://mysite.com/myfile.jpg
Bu komutu iki kez çalıştırırsam, iki dosya alırım:
myfile.jpg
myfile-1.jpg
Varsa dosyanın üzerine yazmasını istediğimi CURL'a nasıl söyleyebilirim?
Yanıtlar:
kullanın:
curl http://mysite.com/myfile.jpg > myfile.jpg
noclobber
seçeneğin etkin olmadığından emin olun ( set +o noclobber
).
Aynı sorunla karşılaştım ve sunucu tarafı ne olursa olsun aynı dosya adını tekrar kullanmak istiyorum, sizin durumunuzda dosya adını alabilirsiniz basename
➸ basename 'http://mysite.com/myfile.jpg'
myfile.jpg
o zaman bir yardımcı bash işlevi yazabilirsiniz:
➸ function download { name="$(basename $1)"; curl "$1" > "$name"; }
➸ download 'http://mysite.com/myfile.jpg'
ancak benim durumumda dosya adı URL'nin bir parçası bile değil, içerik düzenleme ile geliyor; curl ile komut satırı
$ curl -fSL -R -J -O 'http://some-site.com/getData.php?arg=1&arg2=...'
-fSL
sunucu tarafı 302 Yeniden Yönlendirme veriyorsa , bu tanıtıcıları yoksayabilirsiniz ; -R
Sunucu tarafı zaman damgası için, -J
sunucu tarafında dikkate almak Content-Disposition
ve -O
bunun yerine, terminal üzerinde damping indirme davranışı geçmek için;
ancak yine de dosya adı varsa üzerine yazmayı reddetmektedir; Sunucu tarafı Last-Modified
zaman damgası daha yeni ise üzerine yazmak istiyorum ;
bunu yapabilen bir wget çözümü ile sonuçlanır:
$ wget -NS --content-disposition 'http://some-site.com/getData.php?arg=1&arg2=...'
-N
sunucu tarafında tiemstamp kontrol ve sunucu tarafı yeni sürümü sahip olduğunda üzerine yazmak olduğunu; başlığı --content-disposition
dikkate almak Content-Disposition
; ve wget'in varsayılan davranışı sunucu tarafından verilen dosya adına indirmektir.
senin durumunda, zaman damgasını umursamıyorsan, sadece
$ wget -O myfile.jpg http://mysite.com/myfile.jpg
curl
hangi sistemde hangi sürüm?