[svn:perlfaq] r5942 - perlfaq/trunk
[email protected] Wed, 19 Apr 2006 22:59:49 -0700 (PDT)
| Newsgroups | perl.cvs.perlfaq |
|---|---|
| Message-ID | <[email protected]> |
Author: robert
Date: Wed Apr 19 22:59:48 2006
New Revision: 5942
Modified:
perlfaq/trunk/perlfaq8.pod
Log:
Change 27905 by stevep@stevep-mccoy on 2006/04/19 16:32:26
Changes to perlfaq8 "How do I find out if I'm running interactively
or not?" suggested by Slaven Rezic in RT #38901: perlfaq8 correction
Affected files ...
... //depot/perl/pod/perlfaq8.pod#50 edit
Modified: perlfaq/trunk/perlfaq8.pod
==============================================================================
--- perlfaq/trunk/perlfaq8.pod (original)
+++ perlfaq/trunk/perlfaq8.pod Wed Apr 19 22:59:48 2006
@@ -1005,13 +1005,19 @@
the current process group of your controlling terminal as follows:
use POSIX qw/getpgrp tcgetpgrp/;
- open(TTY, "/dev/tty") or die $!;
- $tpgrp = tcgetpgrp(fileno(*TTY));
- $pgrp = getpgrp();
- if ($tpgrp == $pgrp) {
- print "foreground\n";
+
+ # Some POSIX systems, such as Linux, can be
+ # without a /dev/tty at boot time.
+ if (!open(TTY, "/dev/tty")) {
+ print "no tty\n";
} else {
- print "background\n";
+ $tpgrp = tcgetpgrp(fileno(*TTY));
+ $pgrp = getpgrp();
+ if ($tpgrp == $pgrp) {
+ print "foreground\n";
+ } else {
+ print "background\n";
+ }
}
=head2 How do I timeout a slow event?