Diffs to the Frequently Asked Questions postings

Steve Hayman sahayman at iuvax.cs.indiana.edu
Thu Aug 2 14:48:32 AEST 1990


Here are the most recent changes to parts 1 and 2 of the
Frequently Asked Questions articles, which have just been
posted.  You can find the full articles elsewhere in
comp.unix.questions and comp.unix.wizards.  You can also ftp
the most recent version from iuvax.cs.indiana.edu (129.79.254.192),
where it's "pub/Unix-Questions.part1" and "pub/Unix-Questions.part2".

*** /tmp/,RCSt1a24956	Wed Aug  1 23:45:35 1990
--- part1	Wed Aug  1 23:44:05 1990
***************
*** 1,6 ****
  Subject: Welcome to comp.unix.questions and comp.unix.wizards [Monthly posting]
  
! [Last changed: $Date: 90/03/02 00:49:37 $ by $Author: sahayman $]
  
  Comp.unix.questions and comp.unix.wizards are two of the most popular
  and highest volume newsgroups on Usenet.  This article is a monthly
--- 1,6 ----
  Subject: Welcome to comp.unix.questions and comp.unix.wizards [Monthly posting]
  
! [Last changed: $Date: 90/08/01 23:43:59 $ by $Author: sahayman $]
  
  Comp.unix.questions and comp.unix.wizards are two of the most popular
  and highest volume newsgroups on Usenet.  This article is a monthly
***************
*** 83,88 ****
--- 83,91 ----
  comp.unix.questions or comp.unix.wizards.  These include:
  
      comp.lang.c		General discussion of the C language
+ 			(comp.lang.c has its own "Frequently Asked Questions"
+ 			 list - be sure to check it out before posting a
+ 			 question to that group.)
      comp.std.c		Discussion of the ANSI/ISO C standard
      comp.std.unix	Discussion of Unix standards and particularly
  			the IEEE 1003 POSIX standard.
*** /tmp/,RCSt1a24981	Wed Aug  1 23:45:38 1990
--- part2	Wed Aug  1 23:44:11 1990
***************
*** 1,6 ****
  Subject: Frequently Asked Questions about Unix - with Answers [Monthly posting]
  
! [Last changed: $Date: 90/07/02 16:38:51 $ by $Author: sahayman $]
  
  This article contains the answers to some Frequently Asked Questions
  often seen in comp.unix.questions and comp.unix.wizards.  Please don't
--- 1,6 ----
  Subject: Frequently Asked Questions about Unix - with Answers [Monthly posting]
  
! [Last changed: $Date: 90/08/01 23:44:07 $ by $Author: sahayman $]
  
  This article contains the answers to some Frequently Asked Questions
  often seen in comp.unix.questions and comp.unix.wizards.  Please don't
***************
*** 42,48 ****
  	    "info-unix" mailing list work?
  	21) How do I "undelete" a file?
  	22) How can a process detect if it's running in the background?
! 	23) How do I pronounce "vi" , or "!", or "/*", or ...?
  
  
      If you're looking for the answer to, say, question 14, and want to skip
--- 42,49 ----
  	    "info-unix" mailing list work?
  	21) How do I "undelete" a file?
  	22) How can a process detect if it's running in the background?
! 	23) How can an executing program determine its own pathname?
! 	24) How do I pronounce "vi" , or "!", or "/*", or ...?
  
  
      If you're looking for the answer to, say, question 14, and want to skip
***************
*** 485,492 ****
      time (shown by "ls -l"), a last-accessed time (shown by "ls -lu")
      and an inode change time (shown by "ls -lc"). The latter is often
      referred to as the "creation time" - even in some man pages -  but
!     that's wrong; it's the time the file's status was last changed,
!     either by writing or changing the inode (via mv or chmod, etc...).
  
      The man page for "stat(2)" discusses this.
  
--- 486,493 ----
      time (shown by "ls -l"), a last-accessed time (shown by "ls -lu")
      and an inode change time (shown by "ls -lc"). The latter is often
      referred to as the "creation time" - even in some man pages -  but
!     that's wrong; it's also set by such operations as mv, ln,
!     chmod, chown and chgrp.
  
      The man page for "stat(2)" discusses this.
  
***************
*** 638,644 ****
  
  	find /path -print | xargs command
      
!     which would result in
  
  	command file1 file2 file3 file4 dir1/file1 dir1/file2
      
--- 639,645 ----
  
  	find /path -print | xargs command
      
!     which would result in one or more executions of
  
  	command file1 file2 file3 file4 dir1/file1 dir1/file2
      
***************
*** 767,773 ****
  	     for the $IDENT card.  Not elegant."
  
      nroff = "New ROFF"
!     troff = "Typesetter ROFF"
  	
  	These are descendants of "roff", which was a re-implementation
  	of the Multics "runoff" program (a program that you'd use to
--- 768,774 ----
  	     for the $IDENT card.  Not elegant."
  
      nroff = "New ROFF"
!     troff = "Typesetter new ROFF"
  	
  	These are descendants of "roff", which was a re-implementation
  	of the Multics "runoff" program (a program that you'd use to
***************
*** 796,802 ****
  	    be punched literally into the object deck but was represented
  	    by a count somewhere.
  
!     biff = "biff"
  
      	This command, which turns on asynchronous mail notification,
  	was actually named after a dog at Berkeley.
--- 797,803 ----
  	    be punched literally into the object deck but was represented
  	    by a count somewhere.
  
!     biff = "BIFF"
  
      	This command, which turns on asynchronous mail notification,
  	was actually named after a dog at Berkeley.
***************
*** 926,937 ****
  
  22) How can a process detect if it's running in the background?
  
!     In general, you can't.  The fundamental problem is that different
!     shells and different versions of UNIX have different notions of
!     what "foreground" and "background" mean - and on the most common
!     type of system with a better-defined notion of what they mean,
!     programs can be moved arbitrarily between foreground and background!
  
      UNIX systems without job control typically put a process into the
      background by ignoring SIGINT and SIGQUIT and redirecting the standard
      input to "/dev/null"; this is done by the shell.
--- 927,947 ----
  
  22) How can a process detect if it's running in the background?
  
!     First of all: do you want to know if you're running in the background,
!     or if you're running interactively? If you're deciding whether or
!     not you should print prompts and the like, that's probably a better
!     criterion. Check if standard input is a terminal:
  
+ 	    sh: if [ -t 0 ]; then ... fi
+ 	    C: if(isatty(0)) { ... }
+ 
+     In general, you can't tell if you're running in the background.
+     The fundamental problem is that different shells and different
+     versions of UNIX have different notions of what "foreground" and
+     "background" mean - and on the most common type of system with a
+     better-defined notion of what they mean, programs can be moved
+     arbitrarily between foreground and background!
+ 
      UNIX systems without job control typically put a process into the
      background by ignoring SIGINT and SIGQUIT and redirecting the standard
      input to "/dev/null"; this is done by the shell.
***************
*** 944,950 ****
      UNIX systems that support job control, typically do what shells do on
      systems that don't support job control.
  
! 23) How do I pronounce "vi" , or "!", or "/*", or ...?
      You can start a very long and pointless discussion by wondering
      about this topic on the net.  Some people say "vye", some say
      "vee-eye" (the vi manual suggests this) and some Roman numerologists
--- 954,990 ----
      UNIX systems that support job control, typically do what shells do on
      systems that don't support job control.
  
! 23) How can an executing program determine its own pathname?
! 
!     Your program can look at argv[0]; if it begins with a "/",
!     it is probably the absolute pathname to your program, otherwise
!     your program can look at every directory named in the environment
!     variable PATH and try to find the first one that contains an
!     executable file whose name matches your program's argv[0]
!     (which by convention is the name of the file being executed).
!     By concatenating that directory and the value of argv[0] you'd
!     probably have the right name.
!     
!     You can't really be sure though, since it is quite legal for one
!     program to exec() another with any value of argv[0] it desires.
!     It is merely a convention that new programs are exec'd with the
!     executable file name in argv[0].
! 
!     For instance, purely a hypothetical example:
! 	
! 	#include <stdio.h>
! 	main()
! 	{
! 	    execl("/usr/games/rogue", "vi Thesis", (char *)NULL);
! 	}
! 
!     The executed program thinks its name (its argv[0] value) is
!     "vi Thesis".   (Certain other programs might also think that
!     the name of the program you're currently running is "vi Thesis",
!     but of course this is just a hypothetical example, don't
!     try it yourself :-)
!     
! 24) How do I pronounce "vi" , or "!", or "/*", or ...?
      You can start a very long and pointless discussion by wondering
      about this topic on the net.  Some people say "vye", some say
      "vee-eye" (the vi manual suggests this) and some Roman numerologists
***************
*** 960,968 ****
      pronunciation list that has made the rounds in the past.  This list
      is maintained by Maarten Litmaath, maart at cs.vu.nl .
  
  			The Pronunciation Guide
  			-----------------------
! 			      version 2.1
  
  Names derived from UNIX are marked with *, names derived from C are marked
  with +, names derived from (Net)Hack are marked with & and names deserving
--- 1000,1009 ----
      pronunciation list that has made the rounds in the past.  This list
      is maintained by Maarten Litmaath, maart at cs.vu.nl .
  
+ 
  			The Pronunciation Guide
  			-----------------------
! 			      version 2.2
  
  Names derived from UNIX are marked with *, names derived from C are marked
  with +, names derived from (Net)Hack are marked with & and names deserving
***************
*** 984,990 ****
  #    CROSSHATCH, pound, pound sign, number, number sign, sharp, octothorpe#,
  	hash, (garden) fence, crunch, mesh, hex, flash, grid, pig-pen,
  	tictactoe, scratch (mark), (garden) gate, hak, oof, rake, sink&,
! 	corridor&, unequal#
  
  $    DOLLAR SIGN, dollar, cash, currency symbol, buck, string#, escape#, 
  	ding, big-money, gold&, Sonne#
--- 1025,1031 ----
  #    CROSSHATCH, pound, pound sign, number, number sign, sharp, octothorpe#,
  	hash, (garden) fence, crunch, mesh, hex, flash, grid, pig-pen,
  	tictactoe, scratch (mark), (garden) gate, hak, oof, rake, sink&,
! 	corridor&, unequal#, punch mark
  
  $    DOLLAR SIGN, dollar, cash, currency symbol, buck, string#, escape#, 
  	ding, big-money, gold&, Sonne#
***************
*** 1119,1131 ****
  		Of course the "dollar" sign had to be renamed - it became the
  		"international currency symbol" which looks like a circle with
  		4 rays spreading from it:
  
! 			\ /
! 			 O
! 			/ \
! 
! 		Because it looks like a (small) shining sun it was usually
! 		called "Sonne" (sun).
  & donald duck	from the Danish "Anders And", which means "Donald Duck"
  * splat		from DEC "spider" glyph
  * Nathan Hale	"I have but one asterisk for my country."
--- 1160,1173 ----
  		Of course the "dollar" sign had to be renamed - it became the
  		"international currency symbol" which looks like a circle with
  		4 rays spreading from it:
+ 			  ____
+ 			\/    \/
+ 			/      \
+ 			\      /
+ 			/\____/\
  
! 		Because it looks like a (small) shining sun, in the German
! 		Democratic Republic it was usually called "Sonne" (sun).
  & donald duck	from the Danish "Anders And", which means "Donald Duck"
  * splat		from DEC "spider" glyph
  * Nathan Hale	"I have but one asterisk for my country."
***************
*** 1172,1177 ****
  | broken line	EBCDIC has two vertical bars, one solid and one broken.
  ~ enyay		from the Spanish n-tilde
  () nil		LISP
  -- 
  Steve Hayman    Workstation Manager    Computer Science Department   Indiana U.
! sahayman at iuvax.cs.indiana.edu     iuvax!sahayman                 (812) 855-6984
--- 1214,1221 ----
  | broken line	EBCDIC has two vertical bars, one solid and one broken.
  ~ enyay		from the Spanish n-tilde
  () nil		LISP
+ 
  -- 
  Steve Hayman    Workstation Manager    Computer Science Department   Indiana U.
! sahayman at iuvax.cs.indiana.edu                                    (812) 855-6984
! NeXT Mail: sahayman at spurge.bloomington.in.us



More information about the Comp.unix.wizards mailing list