Hi! On 10.04.2011 03:06, James K Lewis wrote: > I have utilized wget for several years to ftp data to my computer to force > ocean circulation models. I recently installed the CA Security software, > replacing Norton 360. The software that executes the calls to wget has now > started running somewhat unusually. I begin the software, it in turn begins > making a number of calls to wget to download files via ftp. The strange > part is that in some cases (not always), wget downloads and stores the files > but doesn't stop executing (I can still see it in the Windows Task Manager, > but using no CPU time). My software in which the calls to wget are imbedded > then hangs. When I highlight wget in the Task Manager and click on "End > Process", the software then continues to execute. > > I have run tests in which I executed the software several times within 5 > minutes, and the wget hang-ups DO NOT occur when ftp'ing the same files. It > appears to hangup at random calls to wget. > > Is there a way from the inputs in the command line to wget to force itself > to end? Something like waiting for 20 s and then forcing wget to end?
Just a couple of points that might or might not be any help. I've seen this exact behaviour, software forking another executable and the forked executable just no longer doing anything in the past. That was neither wget nor with CA Internet Security Suite but with the old Comodo "Firewall" in combination with some other software. (It was the old Comodo which was also still compatible with Windows 2000. They discontinued that "Firewall" line, because ... well ... it didn't work as it created more problems than solved.) It just halted the task as you describe, no user interaction whatsoever. No pop-up, no nothing. So you might want to look into taking it up wit CA, as it might not be a problem with wget or your oceanography software at all. Or checking the settings of your security suite relating to code injection / dll execution, "advanced code security" or whatever else they might call it. The security suite might inject code into running processes to detect malware (spyware), which interfers with pretty much anything run on that computer. (Or use a security suite that actually works as intended. I guess that goes without saying ;) ) If you have a wgetrc or .wgetrc configuration file (depending how and where you got the compiled wget the locations will differ - I'm using Cygwin so I couldn't tell you where it is on other binaries) you could try to add debug = on logfile = c:\wgetlog.txt which might give some indication what the last instance of wget was able to do. I'm not sure how to specify "append" for log file in the configuration file, so the log file gets written over on every instance of wget. On command line append would be --debug -a c:\wgetlog.txt If you need a "kill after 20 seconds" I don't think wget itself can provide that. I guess you could write a wrapper batch script that forks wget, waits for a while whether it does or does not return and then kills it. I'm not sure which if any Windows OS versions come with the NT "kill.exe". At the very least there is a version in this "Debugging Tools for Windows" package http://msdl.microsoft.com/download/symbols/debuggers/dbg_x86_6.11.1.404.msi If you need any newer or 64 bit version: http://www.microsoft.com/whdc/devtools/debugging/default.mspx I usually just unpack (not install) that .msi with 7-zip and only use the "KillEXE" file renamed as kill.exe . So no idea what option(s) would be appropriate when installing the .msi. (Custom install with only "Tools" selected? Change install folder to something WITHOUT spaces or brackets?) To kill any and all instances of wget.exe the command line would look like kill.exe -f wget.exe (Might be a good idea to give the complete path for kill.exe.) Waiting for a specified time in plain Windows batch scripting is usually done with using "ping". (No this isn't a joke. There isn't any "sleep.exe" unless using Cygwin. :) ) Something like %SYSTEMROOT%\system32\ping.exe -n 20 127.0.0.1 for approx. 20 seconds. Or write a wrapper in another programming language. Oh, it might even be the case that the security suite prevents you from killing the (wget) executable, as was the case with my problems with Comodo. From your description, if killing via Task Manager works, I guess kill.exe also should work with "-f". Regards, Tobias.
