Monday, August 01, 2005
I think I'm turning into jwz
So I have to download a customer's site from their old server, because
wget I did a few weeks ago missed some “private”
Why did I use
wget a few weeks ago?
Because of FTP, that's
why (and yes, I did forget that
wget can do FTP—grrrr).
Now, I'm used to using FTP. Been using it since, oh, 1989 or there abouts. But the standard FTP client that comes with Unix doesn't handle directories very well, in that you can't just “get” a directory and have it download all the files in said directory—no, you have to change into each directory and grab the files.
Well, there is
ncftp but I hate
ncftp. I'd rather use a Windows FTP client like CuteFTP or WS-FTP than
ncftp and that says something.
So I end up using
Under Windows no less.
I don't have
ncftp installed on my workstation, because
apparently, it isn't installed by default with this Linux distribution
(which is based off a RedHat distribution—funnily enough, my
system at home, which started out as a RedHat 5.0 system, has
ncftp installed, even though I never use it). And I'm not
about to install it, given the oh so wonderful experiences I've had with
package managers that fail to actually install the packages I want
because I use the common name, like
foobar instead of the more
precise name like
So I figure I'd use Windows, since every Windows GUI FTP client can at least deal with recursively downloading files.
Only the GUI-based FTP clients we have installed on the Windows system are well past their “evaluation” period and is now in the “register now or we trash your system” period. And the default Windows FTP command line program is even more pathetic than the default Unix FTP command line program, so using that is out of the question.
The Windows systems have Cygwin installed, which includes an
So that's why I'm using
ncftp under Windows.
But why do I hate
Because it does things on my behalf that I don't want it doing. I'm used:
GenericUnixPrompt> ftp ftp.example.net Connected to ftp.example.net 220 Foobar 2.4.2 Snap-Dragon-On-Speed Alpha Release Name (ftp.example.net:spc): 331 Password required for spc. Password: 230 User spc logged in. ftp>
You know, the FTP program asking me for the userid and password.
ncftp? Oh, it tries to be “helpful” and unless otherwise
stated on the command line, will automatically anonymously log me
in. You know, to save me from having to type A N O N Y M O U S
(or even F T P which became the other default anonymous user
login because I guess, typing A N O N Y M O U S proved to be too
difficult for most users).
That is not the behavior I expect from an FTP client—especially a command line
FTP client, and I
know I'm in the minority on this (since nearly every one of my
friends seems to like, or at least, tolerate,
ncftp as the
current state of affairs, much like Medival peasants tolerated the Black
Death as the current state of affairs).
Once past that problem, next was downloading the entire site.
Started the recursive
GET, only to have it time out on a
particularly large file. Okay, try it again.
ncftp was smart enough to realize what it had
already downloaded, but a few of the files apparently “changed” between
the two attempts, and I was given the chance to “[O]verwrite” or
“[!O]verwrite All.” My mistake here was assuming that “[!O]verwrite All”
meant that any files that it would otherwise ask me about it would just
No, selecting “[!O]verwrite All” really meant: “re-download every file and oh, crap out on the really large ones.”
A couple of hours of fighting this crap, I found out that what I
really wanted was
set auto-resume yes.
To really drive home the friendliness point—as I was trying to quit
ncftp it noticed that I had not “bookmarked” the site. No,
just quit—I don't need to be asked to “bookmark” it—if I want
to “bookmark” it, I'll tell you.
God, I just love software that knows better than I about what I want done.