Hoe te Gebruiken krullen om Bestanden te Downloaden Van de Linux Commando-Regel

0
381
Fatmawati Achmad Zaenuri/Shutterstock

De Linux curl commando kan heel veel doen meer dan het downloaden van bestanden. Zoek uit wat krullen in staat is, en wanneer je het moet gebruiken in plaats van wget.

krul vs. wget : Wat is het Verschil?

Mensen vaak moeite hebben met het identificeren van de relatieve sterkte van het wget en curl commando ‘ s. De opdrachten hebben een aantal functionele overlap. Ze kunnen elke ophalen van bestanden vanaf externe locaties, maar dat is waar de gelijkenis eindigt.

wget is een fantastische tool voor het downloaden van content en bestanden. Het kan downloaden van bestanden, webpagina ‘ s en mappen. Het bevat intelligente routines te doorkruisen koppelingen in webpagina ‘ s en recursief downloaden van content via een volledige website. Het is onovertroffen als een commando-regel download manager.

krul aan een geheel andere behoefte. Ja, het kan bestanden herstellen, maar het kan niet recursief het navigeren op een website op zoek zijn naar inhoud op te halen. Wat krullen eigenlijk doet is je laten communiceren met externe systemen door het stellen van vragen aan deze systemen en het ophalen en tonen van hun antwoorden naar u. Deze reacties mogelijk dat de inhoud van webpagina ‘ s en bestanden, maar ze kunnen ook gegevens bevatten die via een webservice of API als gevolg van de “vraag” gevraagd door de krullen van het verzoek.

En krul is niet beperkt tot, websites. krul ondersteunt meer dan 20 protocollen, zoals HTTP, HTTPS, SCP, SFTP en FTP. En misschien wel vanwege haar superieure handling van Linux pijpen, krullen gemakkelijker kan worden geïntegreerd met andere commando ‘ s en scripts.

De auteur van krul heeft een webpagina met een beschrijving van de verschillen die hij ziet tussen krul en wget.

Het installeren van krullen

Uit de computers die worden gebruikt om het onderzoek in dit artikel, Fedora 31 en Manjaro 18.1.0 had krullen al geïnstalleerd. krul moest worden geïnstalleerd op Ubuntu 18.04 LTS. Op Ubuntu, voer je dit commando uit om het te installeren:

sudo apt-get install krullen

De krul Versie

De –versie optie maakt curlreport de versie. Het bevat ook alle protocollen ondersteunt.

krul –versie

Het ophalen van een Webpagina

Als we punt krullen op een web-pagina, haalt het voor ons.

krul https://www.bbc.com

Maar de standaard actie is om het te dumpen op het terminal venster als broncode.

Let op: Als u niet vertellen krullen wilt u iets opgeslagen als een bestand, het zal altijd dump naar het terminal venster. Als het bestand is het ophalen van een binair bestand, de uitkomst is onvoorspelbaar. De shell kan proberen te interpreteren sommige van de byte-waarden in het binaire bestand als tekens of escape-reeksen.

Het opslaan van Gegevens naar een Bestand

Laten we zeggen krullen omleiden naar een bestand:

krul https://www.bbc.com > bbc.html

Deze keer zien we niet de opgehaalde informatie wordt verzonden direct naar het bestand voor ons. Omdat er geen terminal venster uitvoer weer te geven, krullen uitgangen een set van informatie over de voortgang.

Het deed dit niet in het vorige voorbeeld, omdat de vooruitgang informatie zou zijn verspreid over het hele web pagina broncode, zodat krullen automatisch onderdrukt het.

In dit voorbeeld, krullen detecteert dat de uitvoer is omgeleid naar een bestand en dat het veilig is voor het genereren van de informatie over de voortgang.

De verstrekte informatie is:

  • % Totaal: Het totale bedrag dat moet worden opgehaald.
  • % Ontvangen: het percentage en De werkelijke waarden van de gegevens die zijn opgehaald tot nu toe.
  • % Xferd: Het percentage en de werkelijke verzonden, als data worden geüpload.
  • Gemiddelde Snelheid Dload: De gemiddelde download snelheid.
  • Gemiddelde Snelheid Upload: De gemiddelde upload-snelheid.
  • Tijd Totaal: De geschatte totale duur van de overdracht.
  • Tijd Besteed: De verstreken tijd, voor zover voor deze overdracht.
  • Tijd: De geschatte tijd voor de overdracht te voltooien
  • Huidige Snelheid: De huidige snelheid van de gegevensoverdracht voor deze overdracht.

Omdat we omgeleid naar de uitgang van krullen naar een bestand, we hebben nu een bestand genaamd “bbc.html.”

Dubbelklikken op dat bestand wordt geopend in uw standaard browser zo instellen dat geeft de opgehaalde webpagina.

Merk op dat het adres in de adresbalk van de browser is een lokaal bestand op deze computer, en niet op een externe website.

We hebben niet omleiden naar een bestand maken. Kunnen We het maken van een bestand met behulp van de -o (output) optie, en het vertellen van krullen om het bestand te maken. Hier gebruiken we de optie-o en het verstrekken van de naam van het bestand dat we willen maken “bbc.html.”

curl -o bbc.html https://www.bbc.com

Met behulp van een voortgangsbalk om Te Controleren Downloads

Om de tekst-gebaseerde informatie te downloaden en vervangen door een eenvoudige progress bar, gebruik de -# (voortgangsbalk) optie.

curl -x -o bbc.html https://www.bbc.com

Het opnieuw starten van een Onderbroken Download

Het is gemakkelijk om opnieuw een download is beëindigd of onderbroken. Laten we beginnen met een download van een groot bestand. We maken gebruik van de nieuwste Ondersteuning op Lange Termijn bouwen van Ubuntu 18.04. We maken gebruik van de –output-optie geeft u de naam op van het bestand dat u wilt opslaan in: “ubuntu180403.iso.”

krul –output ubuntu18043.iso http://releases.ubuntu.com/18.04.3/ubuntu-18.04.3-desktop-amd64.iso

De download wordt gestart en werkt zijn weg naar de voltooiing.

Als we geforceerd onderbreken van de download met Ctrl+C , zijn we terug naar de opdrachtprompt, en de download is verlaten.

Om het downloaden te starten, gebruikt u de-C (blijven) gebruiken. Dit veroorzaakt krullen om het downloaden te starten op een bepaald punt of een offset in het doelbestand. Als een koppelteken te gebruiken – als de offset -, krul zal kijken naar de reeds gedownloade deel van het bestand en het bepalen van de juiste offset voor zichzelf te gebruiken.

krul-C – — – uitgang ubuntu18043.iso http://releases.ubuntu.com/18.04.3/ubuntu-18.04.3-desktop-amd64.iso

De download is gestart. krul de verslagen van de locatie waar het opnieuw wordt opgestart.

Het ophalen van HTTP-headers

Met de -I (hoofd) optie, kunt u de HTTP-headers alleen. Dit is hetzelfde als het versturen van de HTTP HOOFD opdracht om een web-server.

krul-ik www.twitter.com

Deze opdracht haalt u de informatie alleen; het geldt niet voor het downloaden van webpagina ‘ s of bestanden.

Het Downloaden Van Meerdere Url ‘ S

Met xargs we kunnen downloaden van meerdere Url ‘ s in een keer. Misschien willen we het downloaden van een serie van web pagina ‘ s van een enkel artikel of tutorial.

Kopieer deze Url ‘ s naar een editor en sla het op in een bestand met de naam “urls-to-download.txt.” We kunnen gebruik maken van xargs voor de behandeling van de inhoud van elke regel van het tekstbestand als een parameter die het papier omkrullen, op zijn beurt.

https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-ubuntu#0
https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-ubuntu#1
https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-ubuntu#2
https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-ubuntu#3
https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-ubuntu#4
https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-ubuntu#5

Dit is de opdracht die we moeten gebruiken om xargs doorgeven van deze Url ‘ s te krullen, een voor een:

xargs -n 1 curl -O < urls-to-download.txt

Merk op dat dit commando gebruikt de -O (bestand op afstand) output commando, die gebruik maakt van een hoofdletter “O”. Deze optie zorgt ervoor dat de krul opslaan van de herstelde bestand met dezelfde naam die het bestand op de externe server.

De -n optie 1 vertelt xargs voor de behandeling van elke regel van het tekstbestand als een enkele parameter.

Wanneer u de opdracht uitvoert, zie je meerdere downloads start en finish, de een na de andere.

Controleren in het bestand browser toont de meerdere bestanden zijn gedownload. Ieder draagt de naam die het had op de externe server.

GERELATEERD: het Gebruik van de xargs Opdracht op Linux

Het downloaden van Bestanden Van een FTP-Server

Met behulp van curl met een File Transfer Protocol (FTP) server is eenvoudig, zelfs als je te identificeren met een gebruikersnaam en wachtwoord. Om een gebruikersnaam en wachtwoord met krullen gebruiken -u (gebruiker) optie en typ de gebruikersnaam, een dubbele punt “: “en het wachtwoord. Zet geen spatie voor of na de dubbele punt.

Dit is een gratis-voor-het testen van de FTP-server wordt gehost door Rebex. De test FTP-site heeft een vooraf ingestelde gebruikersnaam “demo” en wachtwoord “password”. Geen gebruik van dit soort zwakke gebruikersnaam en wachtwoord op een productie-of “echte” FTP-server.

krul-u-demo:wachtwoord ftp://test.rebex.net

krul rekent uit dat we het verwijzend naar een FTP-server, en geeft een overzicht van de bestanden die aanwezig zijn op de server.

Het enige bestand dat op deze server is een “readme.txt” het bestand van 403 bytes lang. Laten we het ophalen. Gebruik dezelfde opdracht als een moment geleden, met de bestandsnaam toegevoegd:

krul-u-demo:wachtwoord ftp://test.rebex.net/readme.txt

Het bestand wordt opgehaald en krul geeft de inhoud in het terminal venster.

In bijna alle gevallen gaat het handiger om de opgehaalde bestand opgeslagen op de harde schijf voor ons, in plaats van weergegeven in het terminal-venster. Eens te meer kunnen we gebruik maken van de -O (bestand op afstand) output commando om het bestand hebt opgeslagen op de harde schijf met dezelfde bestandsnaam die het heeft op de externe server.

curl -O -u-demo:wachtwoord ftp://test.rebex.net/readme.txt

Het bestand wordt opgehaald en naar de schijf weggeschreven. We kunnen gebruik maken van ls om te controleren of de details van het bestand. Het heeft dezelfde naam als het bestand op de FTP server, en het is dezelfde lengte, 403 bytes.

ls -hl readme.txt

GERELATEERD: het Gebruik van de FTP-Opdracht op Linux

Het verzenden van Parameters op Remote Servers

Sommige externe servers zal accepteren parameters in op de verzoeken die tot hen gezonden. De parameters kunnen worden gebruikt voor het opmaken van de geretourneerde gegevens, bijvoorbeeld of ze kunnen worden gebruikt voor het kiezen van de exacte gegevens die de gebruiker wenst op te halen. Het is vaak mogelijk om te communiceren met de web application programming interfaces (Api ‘ s) met behulp van krullen.

Als een simpel voorbeeld, de ipify website heeft een API kunnen worden opgevraagd om na te gaan uw externe IP-adres.

krul https://api.ipify.org

Door het toevoegen van het formaat parameter toe aan het commando met de waarde van “json” we kunnen weer een verzoek naar onze externe IP-adres, maar dit keer de geretourneerde gegevens worden gecodeerd in het JSON formaat.

krul https://api.ipify.org?format=json

Hier is een ander voorbeeld, dat gebruik maakt van een Google-API. Het geeft een JSON-object beschrijven van een boek. De parameter die u moet bieden is het International Standard Book Number (ISBN) nummer van een boek. Deze kunt u vinden op de achterkant van de meeste boeken, meestal onder een barcode. De parameter die we hier gaan gebruiken is “0131103628.”

krul https://www.googleapis.com/books/v1/volumes?q=isbn:0131103628

De gegevens worden opgehaald, is veelomvattend:

Soms krullen, Soms wget

Als ik wilde om content te downloaden van een website en de boom-structuur van de website doorzocht recursief voor die inhoud, ik gebruik wget.

Als ik wilde om te communiceren met een server op afstand of de API gebruikt, en eventueel downloaden van een aantal bestanden of webpagina ‘ s, ik zou gebruik maken van krullen. Vooral als het protocol is een van de vele niet ondersteund door wget.

LEES VERDER

  • “Lettertypen en Browser-Extensies van Die Hulp voor Mensen met Dyslexie Lezen op het Web
  • “Hoe Kan ik Mijn ISP Vertel ik Gebruik BitTorrent?
  • “Het Instellen van een Smart Garage
  • “Wat Doet “TBH” Betekenen en Hoe Gebruik Je Het?
  • “Hoe om te Zetten naar Live Foto ‘s Video’ s of Gif ‘ s op Je iPhone