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
the wget
I did a few weeks ago missed some “private”
files.
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 ncftp
.
Under Windows no less.
Sigh.
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
foobar-2.4.2-snap-dragon-on-speed.Beta-release
.
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.
But …
The Windows systems have Cygwin installed, which includes an
install of ncftp
.
So that's why I'm using ncftp
under Windows.
But why do I hate ncftp
?
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.
At least 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
overwrite.
Hah!
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.
Sheesh.
God, I just love software that knows better than I about what I want done.