Bagaimana saya bisa mendapatkan HTTP GET dari skrip Un * x shell pada sistem OS OS X? (menginstal perangkat lunak pihak ketiga bukanlah suatu pilihan, karena ini harus dijalankan pada banyak sistem yang berbeda yang tidak saya kendalikan).
Sebagai contoh jika saya memulai server Mercurial secara lokal melakukan servis hg :
... $ hg serve
Dan kemudian, dari Linux yang memiliki perintah wget saya melakukan wget:
... $ wget http://127.0.0.1:8000
--2010-12-31 22:18:25-- http://127.0.0.1:8000/
Connecting to 127.0.0.1:8000... connected.
HTTP request sent, awaiting response... 200 Script output follows
Length: unspecified [text/html]
Saving to: `index.html
Dan di terminal tempat saya meluncurkan perintah "hg serve" , saya memang bisa melihat bahwa HTTP GET membuat jalannya:
127.0.0.1 - - [30/Dec/2010 22:18:17] "GET / HTTP/1.0" 200 -
Jadi di Linux salah satu cara untuk melakukan GET HTTP dari skrip shell adalah dengan menggunakan wget (jika perintah itu diinstal tentu saja).
Apa cara lain untuk melakukan yang setara dengan wget ? Saya mencari, khususnya, untuk sesuatu yang akan bekerja pada instalasi OS X.
Jawaban:
Saya harus mengatakannya
curl http://127.0.0.1:8000 -o outfile
sumber
-O
atau--remote-name
menandai untuk secara otomatis mengganti nama file yang diunduh. miscurl -O http://somehost.org/file.zip
brew install wget
Homebrew adalah manajer paket untuk OSX yang dianalogikan dengan yum, apt-get, choco, emerge, dll. Sadarilah bahwa Anda juga perlu menginstal Xcode dan Command Line Tools. Sebenarnya siapa pun yang menggunakan baris perintah di OSX akan tetap ingin menginstal hal-hal ini.
Jika Anda tidak bisa atau tidak ingin menggunakan homebrew, Anda juga bisa:
Instal wget secara manual:
Atau, gunakan alias bash:
sumber
wget
jawaban yang dapat dilihat oleh pemula di sini karena satu-satunya jawaban lain dihapus oleh pemiliknya, dancurl
merupakan alternatif daripada padanan literal.Curl memiliki mode yang hampir setara dengan wget default.
Ini berfungsi seperti
Dan, jika mau, Anda dapat menambahkan ini ke .bashrc Anda:
Ini tidak 100% kompatibel, tetapi berfungsi untuk penggunaan wget yang paling umum (IMO)
sumber
for i in `seq 1 <n>` do curl -O <url>;done;
mana <n> adalah berapa kali Anda ingin mengulang dan <url> adalah url untuk menarik.-L
tanda untuk mengikuti pengalihan lokasi. Anda dapat menggunakannyacurl -OL <url>
untuk melakukan itu.-O
juga hanya berlaku untuk argumen berikutnya, jadi untuk mengunduh banyak URL Anda harus menggunakan sesuatu seperticurl -O "$url1" -O "$url2"
atauprintf %s\\n "$url1" "$url2"|xargs -n1 curl -O
.1) pada jenis mac Anda
2) rekatkan yang berikut ini
3) tutup lalu buat itu bisa dieksekusi
Itu dia.
sumber
vim /usr/bin/wget
;) haha hanya bercanda. terima kasih atas jawabannya - ini tidak pernah benar-benar terjadi pada saya dan untuk beberapa alasan saya tidak merasa ingin menginstal brew / fink / apa pun, jadi pujian untuk jawaban portabel yang mudah.-L
penting untuk menangani301
respons http . wget menangani mereka secara default.Gunakan
curl
;sumber
Inilah setara Mac OS X dari Linux.
Untuk Linux, misalnya Ubuntu pada instance AWS, gunakan:
Pada Mac, yaitu untuk pengembangan lokal, gunakan ini:
Parameter -o diperlukan pada Mac untuk output ke file, bukan pada layar. Tentukan nama target yang berbeda untuk mengganti nama file yang diunduh.
Gunakan modal -O untuk mengganti nama dengan wget. Huruf kecil -o akan menentukan file output untuk log transfer.
sumber
Anda dapat membangun wget di mesin mac atau menggunakan MacPorts untuk menginstalnya secara langsung.
Ini akan berfungsi seperti pesona, Anda juga dapat memperbarui ke versi terbaru segera setelah tersedia. Port jauh lebih stabil daripada minuman, meskipun memiliki jumlah formula dan port yang jauh lebih sedikit.
Anda dapat menginstal MacPorts dari
https://www.macports.org/install.php
Anda dapat mengunduh.pkg
file dan menginstalnya.sumber
Alih-alih menggunakan yang setara, Anda dapat mencoba "brew install wget" dan gunakan wget.
Anda harus menginstal minuman di mac Anda.
sumber
Anda bisa menggunakannya
curl
sebagai gantinya. Ini diinstal secara default ke/usr/bin
.sumber
wget Precompiled Mac Binary
Bagi mereka yang mencari instalasi wget cepat di Mac, lihat biner yang dikompilasi Quentin Stafford-Fraser di sini, yang telah ada selama lebih dari satu dekade:
https://statusq.org/archives/2008/07/30/1954/
MD5 untuk 2008 wget.zip: 24a35d499704eecedd09e0dd52175582
MD5 untuk 2005 wget.zip: c7b48ec3ff929d9bd28ddb87e1a76ffb
Tidak ada sampah make / install / port / brew / curl. Cukup unduh, instal, dan jalankan. Bekerja dengan Mac OS X 10.3-10.12 +.
sumber