Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Authentication-Warning: slinky.cs.nyu.edu: pechtcha owned process doing -bs Date: Mon, 22 Mar 2004 08:11:55 -0500 (EST) From: Igor Pechtchanski Reply-To: cygwin AT cygwin DOT com To: Lars Steinke cc: cygwin AT cygwin DOT com Subject: Re: g77 (new), Windows XP Professional, CALL System(Command, Status), directory. In-Reply-To: Message-ID: References: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Scanned-By: MIMEDefang 2.39 On Mon, 22 Mar 2004, Lars Steinke wrote: > >On Sat, 20 Mar 2004, Lars Steinke wrote: > > > >> Hello, > >> > >> call system('cmd.exe /c cls') > >> > >> works! Thank you Dave! > >> > >> Now I have a new problem with 'call system': > >> I wolud like to start a batch-file named '1.bat'. > >> 1.bat and my program are in the same directory (C:\test). > >> > >> call system('1.bat') > >> pause > >> end > >> > >> Error-message: > >> > >> 1.bat: not found > >> > >> If i add the directory to the PATH: > >> > >> PATH=%PATH%;C:\test > >> > >> it works, but normally the current directory should be scanned, also if > >> it is not in the PATH...? > >> > >> If I try to start my program from the cygwin-shell (current directory is > >> the directory where the program is saved) i get the following > >> error-message: > >> > >> bash: a.exe: command not found > >> > >> This is no 'call system'-problem, but mayby there is a correllation. > >> > >> Thank you very much, Lars. > > > >Lars, > > > >In Cygwin, like in most Unixes, and unlike Windows, "." (the current > >directory) has to explicitly be in the PATH for programs to be found there > >(see ). As the FAQ says, you can > >prepend "./" to the name of the program in the current directory. > >Alternatively, you can add "." to the PATH, either in your environment, or > >via a "putenv" call if FORTRAN supports it. > > Ok, but I have the same situation in Windows and in windows normally the "." should be scanned, also if it is not in the PATH. > If my program tries to invoke 1.bat (Win-shell) it fails (1.bat: not found), although it is in the same directory (and it is not a builtin command). > If I try to compile: > > CALL System('.\1.bat') > > ?.bat: not found > > > CALL System('cmd.exe /c 1.bat') works, but 1.bat is not a builtin command...? > > > >P.S. FYI, system("cmd /c cls") won't work on Win9x. > > Is there a command which fits both? > Thanks, Lars. Wrong slash. Try CALL System('./1.bat') As for Win9x, they use "command.com", not "cmd.exe"... I doubt there's a command that'll do both (unless you get the value of the COMSPEC environment variable and use that)... You can also use the "clear" command (in the "clear" package). HTH, Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu ZZZzz /,`.-'`' -. ;-;;,_ igor AT watson DOT ibm DOT com |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski, Ph.D. '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "I have since come to realize that being between your mentor and his route to the bathroom is a major career booster." -- Patrick Naughton -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/