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 https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html 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. Cheers, David.