[R] Calling FING.EXE under RGui.EXE for windows.

Duncan Murdoch murdoch at stats.uwo.ca
Sun Jan 10 01:27:03 CET 2010


On 09/01/2010 6:31 PM, Gabor Grothendieck wrote:
> That doesn't explain why this returns character(o) even though we have
> launched a console for it:
> 
> system("cmd /c C:\\windows\\system32\\find /?", intern = TRUE)

I don't see any console launched.  R redirects stdin and stdout (and 
stderr, I think), and it appears that Windows doesn't open a console.  I 
do see a console flash by if I do

system('cmd /c c:/WINDOWS/system32/find.exe /?', wait=FALSE, 
invisible=FALSE)

but of course then we don't capture the output, so it's not very useful. 
  Looking at the source, the only case where we ask to create a console 
is the combination "wait=FALSE, invisible=FALSE", but there might be 
combinations of other options that make this a default.  The MS 
documentation says that a console will be created automatically for any 
console application, but that doesn't appear to be happening.

So I guess you could get find.exe to work by calling it from a batch 
file with a "pause" at the end and using the wait=FALSE,invisible=FALSE 
options.

The above observations are in Win XP SP3, not anything newer.

Duncan Murdoch

> 
> On Sat, Jan 9, 2010 at 5:24 PM, Duncan Murdoch <murdoch at stats.uwo.ca> wrote:
>> On 07/01/2010 1:25 PM, Uwe Ligges wrote:
>>> Argh. I see it as well. Will dig a lit tomorrow.
>> I don't know exactly what's going on, but it looks as though it is something
>> specific to the find.exe utility, e.g. maybe it is assuming that it's being
>> run inside a console and reading CONIN$ or writing to CONOUT$ without
>> checking whether they can be opened.  When you run it from Rterm, Rterm is
>> in a console, which appears to be good enough.
>>
>> So it may be anyone who wants to use it will have to contact Microsoft to
>> find out how...
>>
>> Duncan Murdoch
>>
>>> Uwe
>>>
>>>
>>>
>>>
>>>
>>> On 07.01.2010 12:25, Gabor Grothendieck wrote:
>>>> I get a problem with shell too:
>>>>
>>>> Under Rgui:
>>>>
>>>>> R.version.string
>>>> [1] "R version 2.10.1 Patched (2010-01-01 r50884)"
>>>>
>>>>> system("C:\\windows\\system32\\find /?", intern = TRUE)
>>>> character(0)
>>>>
>>>>> system("cmd /c C:\\windows\\system32\\find /?", intern = TRUE)
>>>> character(0)
>>>>
>>>>> shell("C:\\windows\\system32\\find /?")
>>>> Warning message:
>>>> In shell("C:\\windows\\system32\\find /?") :
>>>>  'C:\windows\system32\find /?' execution failed with error code 1
>>>>
>>>> They all work, i.e. they give the required help message, under Rterm
>>>> and when I issue this from the Windows console it works:
>>>> C:\windows\system32\find /?
>>>>
>>>>
>>>> 2010/1/7 Uwe Ligges<ligges at statistik.tu-dortmund.de>:
>>>>> On 07.01.2010 02:04, Gabor Grothendieck wrote:
>>>>>> If you have C:\Rtools\bin on your PATH note that it contains a
>>>>>> UNIX-like find utility that conflicts with the find utility in
>>>>>> Windows.  If that is the problem then remove that from your PATH and
>>>>>> then run the batch file.
>>>>>>
>>>>>> The batchfiles distribution at http://batchfiles.googlecode.com  has
>>>>>> utilities (Rgui.bat, R.bat, Rtools.bat, etc.) that will automatically
>>>>>> add C:\Rtools\bin to your path temporarily or only while R is running
>>>>>> so that you can leave it off your PATH.
>>>>> I guess it's the use of system() rather than shell() that causes the
>>>>> problem. Under Windows, you have to use shell in order to start a
>>>>> command
>>>>> interpreter.
>>>>>
>>>>> Uwe Ligges
>>>>>
>>>>>
>>>>>> On Wed, Jan 6, 2010 at 6:51 PM, John Schexnayder<jschex at us.ibm.com>
>>>>>>  wrote:
>>>>>>> This is sort of a strange bug.  Not show stopping, but annoying.  I
>>>>>>> was
>>>>>>> wondering if anyone else has noticed this and reported it before I
>>>>>>> submit
>>>>>>> a bug report.
>>>>>>>
>>>>>>> I noticed while running the RGui and attempting to debug one of my
>>>>>>> scripts
>>>>>>> that I encountered a Windows error informing me that "Find String
>>>>>>> [grep]
>>>>>>> Utility has encountered a problem and needs to close."  It is being
>>>>>>> generated by a call to a DOS batch file which contains a call to
>>>>>>> Find.exe.
>>>>>>>  It can be reproduced by simply typing  "System("find")" in RGui.
>>>>>>>  What I
>>>>>>> found strange is that I have been running this script daily without
>>>>>>> this
>>>>>>> problem for months.  I now realize I never ran that portion of the
>>>>>>> script
>>>>>>> while in RGui.exe.  It has always run in batch mode which is done by
>>>>>>> Rterm.exe.
>>>>>>>
>>>>>>> I have tried this on three separate machines now all running Windows
>>>>>>> XP
>>>>>>> SP3, with versions of R 2.8.1 and R 2.10.1  If executing
>>>>>>> "System("find")
>>>>>>> under RGui, an error window for the Find String Utility is generated
>>>>>>> and
>>>>>>> the command is not exectuted.  If the same command is issued in Rterm
>>>>>>> the
>>>>>>> expected "FIND: Parameter format not correct" message is properly
>>>>>>> returned.
>>>>>>>
>>>>>>> It doesn't seem an important bug, but it could be the canary in the
>>>>>>> mine
>>>>>>> for a larger problem somewhere down the road.
>>>>>>>
>>>>>>> Re,
>>>>>>> John Schexnayder
>>>>>>>
>>>>>>> IBM Tape Manufacturing - Information Technology
>>>>>>> San Jose, CA  95138
>>>>>>> JSchex at us.ibm.com
>>>>>>>
>>>>>>>        [[alternative HTML version deleted]]
>>>>>>>
>>>>>>> ______________________________________________
>>>>>>> R-help at r-project.org mailing list
>>>>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>>>>> PLEASE do read the posting guide
>>>>>>> http://www.R-project.org/posting-guide.html
>>>>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>>>>
>>>>>> ______________________________________________
>>>>>> R-help at r-project.org mailing list
>>>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>>>> PLEASE do read the posting guide
>>>>>> http://www.R-project.org/posting-guide.html
>>>>>> and provide commented, minimal, self-contained, reproducible code.
>>> ______________________________________________
>>> R-help at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide
>>> http://www.R-project.org/posting-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>



More information about the R-help mailing list