krullen is een platformoverschrijdende opdrachtregel voor het ophalen en verzenden van bestanden met de URL-syntaxis. Het is een recursief acroniem dat staat voor Curl URL Request Library en het is een zeer uitgebreid programma dat een breed scala aan internetprotocollen ondersteunt, waaronder HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, LDAPS, DICT, TELNET, BESTAND, IMAP, POP3, SMTP en RTSP.

curl heeft een hele reeks functies en trucs, waaronder gebruikersauthenticatie, proxyondersteuning, FTP-upload en download, HTTP-post, cookies, hervatten van bestandsoverdracht, SSL-verbindingen en nog veel meer. Dit artikel zal dienen als een inleiding tot krul, voor degenen die niet bekend zijn met het programma, terwijl machtige gebruikers er ook van kunnen profiteren.

Installatie

Om krul op een Debian / Ubuntu-systeem te installeren, voert u de volgende opdracht uit:

 sudo apt-get install curl 

Syntaxis

In de basis verwacht curl een URL-argument en wordt geprobeerd om het bestand op te halen dat beschikbaar is bij de opgegeven URL.

 krul http://www.maketecheasier.com 

Standaard wordt de opgehaalde bestandsinhoud naar de opdrachtregel gedumpt. Als een uitvoerbestand is opgegeven, toont het programma een voortgangsmeter die de hoeveelheid overgedragen gegevens, overdrachtssnelheden, geschatte resterende tijd en onder andere de tijd weergeeft. Gebruik de optie -o om het opgehaalde bestand op te slaan op uw systeem, met een gegeven bestandsnaam:

 curl -o mte-index.html http://www.maketecheasier.com 

Gebruik de optie -O om een ​​bestand op te slaan met dezelfde naam als op de server:

 curl -O ftp://ftp.kernel.org/pub/linux/kernel/v4.x/linux-4.0.tar.xz 

Om een ​​bestand te krijgen van een ftp-server die gebruikersnaam en wachtwoord vereist:

 curl -O ftp: // gebruikersnaam: [email protected]/pub/linux/kernel/v4.x/linux-4.0.tar.xz 

Als u meerdere URL's of delen van een URL wilt opgeven, plaatst u de deelsets tussen accolades:

 curl -O http://www.maketecheasier.com/author/{obaro, ivana, vamsi} 

U kunt ook een bereik in een alfanumerieke reeks opgeven door vierkante haken te gebruiken:

 curl -O ftp://ftp.numericals.com/file[1-100].txt curl -O ftp://ftp.letters.com/file[az].txt curl -O http://any.org /archive[1996-1999]/vol[1-4]/part{a, b, c}.html 

Als u de opgehaalde bestanden in meerdere documenten wilt opslaan, gebruikt u het symbool '#' gevolgd door een nummer in de bestandsnaamspecificatie. Dit wordt dan vervangen door de huidige tekenreeks in de opgegeven URL

 curl -o "file_ # 1.txt" http: // {one, two} .site.com curl -o "output_ # 1_ # 2" http: // {site, host} .host [1-5]. com 

U kunt de User-Agent-tekenreeks opgeven die moet worden gebruikt bij het identificeren van http-servers, voor http-verbindingen wordt de vlag -A :

 curl -A "Mozilla / 5.0 (Windows NT 6.3; rv: 36.0) Gecko / 20100101 Firefox / 36.0" -o mte-index.html http://www.maketecheasier.com 

Gebruik de optie -d om gegevens te verzenden via HTTP POST:

 curl -d "gebruikersnaam = obaro" -d "wachtwoord = wachtwoord" http://maketecheasier.com 

Als u zich bijvoorbeeld aanmeldt bij een website, wilt u waarschijnlijk de bijgeleverde cookies opslaan voor later gebruik. Gebruik de optie -c (of --cookie-jar ) om de ontvangen cookies op te slaan:

 curl -d "gebruikersnaam = obaro" -d "wachtwoord = wachtwoord" -c mte-cookies http://maketecheasier.com 

Gebruik de -b optie om deze opgeslagen cookies te gebruiken:

 curl -b mte-cookies -d "hc_comment = Dit is een reactie & submit = true" http://www.maketecheasier.com/monitor-hard-disk-health-linux/ 

Gebruik de optie -T om een ​​bestand te uploaden. Voor http (s) -servers wordt in plaats hiervan de opdracht PUT gebruikt:

 curl -T "file1.jpg" http://www.uploadmania.com/upload 

Gebruik de vlag --ssl-reqd om het gebruik van SSL / TLS voor verbindingen --ssl-reqd . U kunt ook meerdere bestanden opgeven op dezelfde manier waarop u meerdere URL's opgeeft:

 curl --ssl-reqd -T "bestand [1-100] .jpg" ftp: // gebruikersnaam: [email protected]/upload 

Bovendien kunt u de inloggegevens opgeven met de optie -u:

 curl -u gebruikersnaam: wachtwoord --ssl-reqd -T "bestand [1-100] .jpg" ftp://ftp.uploadmania.com/upload 

krullen is een heel eenvoudig, degelijk en toch volledig programma. Er zijn zoveel verschillende opties beschikbaar en het behandelt een groot aantal protocollen, maar we hebben nog maar net het oppervlak van zijn mogelijkheden bekrast. Dit is een inleiding tot krullen, voor gebruikers die het nog niet eerder hebben gebruikt en een herinnering voor degenen die bekend zijn met de mogelijkheden. Vergeet niet om de manpagina's te bekijken of typ het volgende voor meer info:

 man krul 

Als je hier een bepaald gebruik van hebt, deel dit dan met ons in de comments.