O'Reilly

Download A File Using Cygwin and cURL

By on  

I'm starting to like using Cygwin more and more. Command line scripting allows me to get the information without all of the hassle. Why should I open Firefox, type in the address, deal with the ads, and click 5 links before I can get to what I want when I can use command line to download what I want? Here's how you can download a file using the cURL package from the command line.

The Bash Script

curl http://davidwalsh.name/ --O homepage.txt

The above example downloads my homepage and saves it into a file named homepage.txt. The file gets downloaded to the c:\cygwin\home\{user}\ folder. For fun, here's how to download Cygwin's setup file from Cygwin.

curl http://cygwin.com/setup.exe --O cygwin-setup.exe

Great stuff. What would you use this for?

Track.js Error Reporting

Upcoming Events

Recent Features

  • Facebook Open Graph META Tags

    It's no secret that Facebook has become a major traffic driver for all types of websites.  Nowadays even large corporations steer consumers toward their Facebook pages instead of the corporate websites directly.  And of course there are Facebook "Like" and "Recommend" widgets on every website.  One...

  • Vibration API

    Many of the new APIs provided to us by browser vendors are more targeted toward the mobile user than the desktop user.  One of those simple APIs the Vibration API.  The Vibration API allows developers to direct the device, using JavaScript, to vibrate in...

Incredible Demos

  • CSS Animations Between Media Queries

    CSS animations are right up there with sliced bread. CSS animations are efficient because they can be hardware accelerated, they require no JavaScript overhead, and they are composed of very little CSS code. Quite often we add CSS transforms to elements via CSS during...

  • Build a Toggling Announcement Slider Using MooTools 1.2

    A few of my customer have asked for me to create a subtle but dynamic (...I know...) way for them to advertise different specials on their website. Not something that would display on every page, but periodically or only the homepage. Using a trick...

Discussion

  1. I’ve used curl to download a ton of scanned documents from the Library of Congress. Each page was done as a separate TIF and after doing about 10 manually from the browser I learned from a friend about curl… Now if I had only been smart enough to handled getting both TIF and JPG at the same time…

  2. I typically use curl to download files onto my server rather than downloading to whatever machine I’m working on and then using FTP to copy it up. Particularly when I’m playing around with grabbing wordpress themes and things like that.

  3. You can use curl to create a super simple twitter client.

    For downloading files, I prefer wget.

    Full Disclosure: I use Linux – not Cygwin.

  4. If you play it right you can go check most everything you want with some fancy cURL-ing. Cygwin is the new iGoogle….

    @David: BTW… you get Ubuntu running? Let me know what you think.

    • Hasmik

      Hi. As I understand you use cygwin, am i right?…..So I ask you for help….I want to install cygwinn , but it isn’t complete so there are packages that cann’t be known in process of installing and postinstalling error occurs saying that these packeges ( for ex. brltty.sh exit cod1) aren’t known. what can I do. Please response if you can help. Thanks.

  5. @Eric: I’ll IM you about the Ubuntu. Trouble was afoot…

  6. Isn’t wget better :) ? Personally I prefer some unix platform, where these great tools are installed by default, bash is better than cmd etc. At the moment I’m using mac … Windows for web testing can run there through virtualization, that’s no problem …

  7. @Botanicus: Don’t ruin tomorrow’s post, Bot!

  8. Aloke

    AFAIK, both curl and wget use the same underlying libraries.

    Also, until wget added the new -s options, curl was the only way to retrieve https documents.

  9. Rad

    “Why should I open Firefox, type in the address, deal with the ads, and click 5 links before I can get to what I want when I can use command line to download what I want?”

    Because you don’t know the URL of every file that exists on the internet. Using these commands can be useful, but will never be able to replace a web browser for downloading files.

  10. How can use Cygwin to compile & build files ??

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!

Recently on David Walsh Blog

  • Free Download: Font Bundle Featuring 17 Incredible Typefaces

    The only thing we love more than a good font, is a good free font. So we’ve combed the Web for some of our favorite free fonts, and gathered them here in a single download. You’ll find a variety of useful typefaces, from highly geometric designs...

  • OâReilly Velocity Conference â Amsterdam

    My favorite front-end conference has always been O'Reilly's Velocity Conference because the conference series has focused on one of the most undervalued parts of client side coding:  speed.  So often we're so excited that our JavaScript works that we forget that speed, efficiency, and performance are just as important. The next Velocity...

  • CanIUse Command Line

    Every front-end developer should be well acquainted with CanIUse, the website that lets you view browser support for browser features.  When people criticize my blog posts for not detailing browser support for features within the post, I tell them to check CanIUse:  always up to date, unlike...

  • Generating Alternative Stylesheets for Browsers Without @media

    If your CSS code is built with a mobile-first approach, it probably contains all the rules that make up the "desktop" view inside @media statements. That's great, but browsers that don't support media queries (IE 8 and below) will simply ignore them, ending up getting the...

  • Serve a Directory with PHP

    Many developers have a giggle at PHP, even looking down at the language, but let's be honest:  most of our blogs are powered by it (WordPress) and it's a great language to dabble around with.  I cut my teeth on PHP, though I prefer to avoid PHP these days. But...