[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: problem with wget -O

On Thu 28 Jan 2021 at 11:10:48 (-0500), Greg Wooledge wrote:
> On Thu, Jan 28, 2021 at 10:06:25AM -0600, David Wright wrote:
> > Perhaps file a bug against that page. It appears that they were using
> > -O merely to avoid overwriting http://master.zip with the second instance of
> > wget. The manpage expressly advises against doing that: "Use of -O is
> > not intended to mean simply "use the name file instead of the one in
> > the URL". They should just use mv after each wget to place the zip
> > files where they want them.
> If -O is bad, then what are you supposed to use instead?

--no-config has already been mentioned by a couple of people.
There's also -nc which makes the command fail if the output
file already exists. There's even --backups which can move
existing files out of the way. I think wget has options
enough for most people's taste.

> If you need to "use mv after each wget", how do you know the name of the
> file that wget used?  And why can't you simply tell wget to use the
> filename you *want* it to be written to?

When running wget interactively, the name gets written on the
screen. When writing a script, one might check for a pre-existing
file (before) or discover the new file's name from stderr (after).

I looked at the instructions in question at
and it wasn't clear to me whether the Code examples were designed
as Instructions to follow or Scripts to cut/paste.

> Why would you need to do this
> weird two-step process?

For similar reasons that one types   cd foo   at the console,
but puts   cd foo || exit   in a script; or trains one's fingers
to type "mv -i" and "rm -i" as a matter of habit.

BTW I downloaded one of the files Gene mentioned by typing
$ wget https://github.com/opencv/opencv/archive/master.zip
and ended up with master.zip.1 because I had downloaded an
unrelated project from git 3 weeks ago. Renaming was the
usual result of relying on wget's reasonable defaults.


Reply to: