X11 capturing DISPLAY value

Eliot Moss moss@cs.umass.edu
Sun Mar 10 23:30:00 GMT 2013

On 3/10/2013 6:17 PM, wynfield@gmail.com wrote:
> I wanted to capture the X11 DISPLAY value that shows on the console when 'startx &' in invoked and successful.  I've tried:
>   startx 2>&1 | grep DISPLAY\= >/tmp/xwin.txt &
>   startx 2>&1 | grep DISPLAY >/tmp/xwin.txt &
> but neither worked.  I could check files in /tmp/.X11-unix/* for date, owner, etc, and hope that the newest one is the right one and extract the number from the name, however if another user started an X window in the meantime I'd get the wrong DISPLAY v
> alue.
> Is there a preferred standard way to get this value?

Usually :0.0 or something like $(hostname):0.0 will do, unless you
have multiple screens or are connecting to a remote host.  In the
latter case you would not be running startx, so the :0.0 or
$(hostname):0.0, or something along those lines, should be fine.
I believe it's the usual thing most people do ...

As for the above, if you try immediately to examine /tmp/xwin.txt,
the answer may not be there yet, since it takes a little while
for startx and grep to begin to do their thing and you put & at
the end of the pipeline, which means to proceed immediately.
So there's an inherent shell script programming timing / concurrency
race that you would need to solve for this approach to work.

Regards -- Eliot Moss

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

More information about the Cygwin mailing list