mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-10 07:04:03 +00:00
76c38efeb9
PR: 38712 Submitted by: KATO Tsuguru <tkato@prontomail.com>
218 lines
6.6 KiB
Plaintext
218 lines
6.6 KiB
Plaintext
--- doc/gawk.texi.orig Mon Apr 22 20:26:20 2002
|
|
+++ doc/gawk.texi Mon May 20 23:07:14 2002
|
|
@@ -97,7 +97,7 @@
|
|
@finalout
|
|
@end iftex
|
|
|
|
-@copying
|
|
+@ifinfo
|
|
Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
|
@sp 2
|
|
|
|
@@ -122,7 +122,7 @@
|
|
software. Copies published by the Free Software Foundation raise
|
|
funds for GNU development.''
|
|
@end enumerate
|
|
-@end copying
|
|
+@end ifinfo
|
|
|
|
@c Comment out the "smallbook" for technical review. Saves
|
|
@c considerable paper. Remember to turn it back on *before*
|
|
@@ -184,8 +184,24 @@
|
|
|
|
@c This one is correct for gawk 3.1.0 from the FSF
|
|
ISBN 1-882114-28-0 @*
|
|
-@sp 2
|
|
-@insertcopying
|
|
+
|
|
+Permission is granted to copy, distribute and/or modify this document
|
|
+under the terms of the GNU Free Documentation License, Version 1.1 or
|
|
+any later version published by the Free Software Foundation; with the
|
|
+Invariant Sections being ``GNU General Public License'', the Front-Cover
|
|
+texts being (a) (see below), and with the Back-Cover Texts being (b)
|
|
+(see below). A copy of the license is included in the section entitled
|
|
+``GNU Free Documentation License''.
|
|
+
|
|
+@enumerate a
|
|
+@item
|
|
+``A GNU Manual''
|
|
+
|
|
+@item
|
|
+``You have freedom to copy and modify this GNU Manual, like GNU
|
|
+software. Copies published by the Free Software Foundation raise
|
|
+funds for GNU development.''
|
|
+@end enumerate
|
|
@sp 2
|
|
Cover art by Etienne Suvasa.
|
|
@end titlepage
|
|
@@ -228,7 +244,9 @@
|
|
This file documents @command{awk}, a program that you can use to select
|
|
particular records in a file and perform operations upon them.
|
|
|
|
-@insertcopying
|
|
+This is Edition @value{EDITION} of @cite{@value{TITLE}: @value{SUBTITLE}},
|
|
+for the @value{VERSION}.@value{PATCHLEVEL} (or later) version of the GNU
|
|
+implementation of AWK.
|
|
|
|
@end ifnottex
|
|
|
|
@@ -21418,8 +21436,7 @@
|
|
arranges to clean up any temporary files on program exit or upon an
|
|
interrupt.
|
|
|
|
-@c 2e: For the temp file handling, go with Darrel's ig=${TMP:-/tmp}/igs.$$
|
|
-@c 2e: or something as similar as possible.
|
|
+@c 2e: For the temporary file handling, use mktemp with $@{TMPDIR:-/tmp@}.
|
|
|
|
The next part loops through all the command-line arguments.
|
|
There are several cases of interest:
|
|
@@ -21440,13 +21457,13 @@
|
|
These are saved and passed on to @command{gawk}.
|
|
|
|
@item -f@r{,} --file@r{,} --file=@r{,} -Wfile=
|
|
-The @value{FN} is saved to the temporary file @file{/tmp/ig.s.$$} with an
|
|
+The @value{FN} is saved to a temporary file with an
|
|
@samp{@@include} statement.
|
|
The @command{sed} utility is used to remove the leading option part of the
|
|
argument (e.g., @samp{--file=}).
|
|
|
|
@item --source@r{,} --source=@r{,} -Wsource=
|
|
-The source text is echoed into @file{/tmp/ig.s.$$}.
|
|
+The source text is echoed into a temporary file.
|
|
|
|
@item --version@r{,} -Wversion
|
|
@command{igawk} prints its version number, runs @samp{gawk --version}
|
|
@@ -21457,17 +21474,12 @@
|
|
or @option{-Wsource} arguments are supplied, then the first nonoption argument
|
|
should be the @command{awk} program. If there are no command-line
|
|
arguments left, @command{igawk} prints an error message and exits.
|
|
-Otherwise, the first argument is echoed into @file{/tmp/ig.s.$$}.
|
|
+Otherwise, the first argument is echoed into a temporary file.
|
|
In any case, after the arguments have been processed,
|
|
-@file{/tmp/ig.s.$$} contains the complete text of the original @command{awk}
|
|
-program.
|
|
+the complete text of the original @command{awk} program
|
|
+is contained in a temporary file.
|
|
|
|
@cindex @command{sed} utility
|
|
-@cindex stream editors
|
|
-The @samp{$$} in @command{sh} represents the current process ID number.
|
|
-It is often used in shell programs to generate unique temporary @value{FN}s.
|
|
-This allows multiple users to run @command{igawk} without worrying
|
|
-that the temporary @value{FN}s will clash.
|
|
The program is as follows:
|
|
|
|
@cindex @code{igawk.sh} program
|
|
@@ -21482,6 +21494,18 @@
|
|
# Arnold Robbins, arnold@@gnu.org, Public Domain
|
|
# July 1993
|
|
|
|
+# Temporary file handling modifications for Owl by
|
|
+# Jarno Huuskonen and Solar Designer, still Public Domain
|
|
+# May 2001
|
|
+
|
|
+if [ ! -x /usr/bin/mktemp ]; then
|
|
+ echo "$0 needs mktemp to create temporary files."
|
|
+ exit 1
|
|
+fi
|
|
+
|
|
+STEMPFILE=`/usr/bin/mktemp $@{TMPDIR:-/tmp@}/igawk.s.XXXXXX` || exit 1
|
|
+ETEMPFILE=`/usr/bin/mktemp $@{TMPDIR:-/tmp@}/igawk.e.XXXXXX` || exit 1
|
|
+
|
|
@c endfile
|
|
@end ignore
|
|
@c file eg/prog/igawk.sh
|
|
@@ -21491,7 +21515,7 @@
|
|
shift
|
|
else
|
|
# cleanup on exit, hangup, interrupt, quit, termination
|
|
- trap 'rm -f /tmp/ig.[se].$$' 0 1 2 3 15
|
|
+ trap 'rm -f $STEMPFILE $ETEMPFILE' EXIT HUP INT QUIT TERM
|
|
fi
|
|
|
|
while [ $# -ne 0 ] # loop over arguments
|
|
@@ -21508,26 +21532,26 @@
|
|
|
|
-[vF]*) opts="$opts '$1'" ;;
|
|
|
|
- -f) echo @@include "$2" >> /tmp/ig.s.$$
|
|
+ -f) echo @@include "$2" >> $STEMPFILE
|
|
shift;;
|
|
|
|
-f*) f=`echo "$1" | sed 's/-f//'`
|
|
- echo @@include "$f" >> /tmp/ig.s.$$ ;;
|
|
+ echo @@include "$f" >> $STEMPFILE ;;
|
|
|
|
-?file=*) # -Wfile or --file
|
|
f=`echo "$1" | sed 's/-.file=//'`
|
|
- echo @@include "$f" >> /tmp/ig.s.$$ ;;
|
|
+ echo @@include "$f" >> $STEMPFILE ;;
|
|
|
|
-?file) # get arg, $2
|
|
- echo @@include "$2" >> /tmp/ig.s.$$
|
|
+ echo @@include "$2" >> $STEMPFILE
|
|
shift;;
|
|
|
|
-?source=*) # -Wsource or --source
|
|
t=`echo "$1" | sed 's/-.source=//'`
|
|
- echo "$t" >> /tmp/ig.s.$$ ;;
|
|
+ echo "$t" >> $STEMPFILE ;;
|
|
|
|
-?source) # get arg, $2
|
|
- echo "$2" >> /tmp/ig.s.$$
|
|
+ echo "$2" >> $STEMPFILE
|
|
shift;;
|
|
|
|
-?version)
|
|
@@ -21542,7 +21566,7 @@
|
|
shift
|
|
done
|
|
|
|
-if [ ! -s /tmp/ig.s.$$ ]
|
|
+if [ ! -s $STEMPFILE ]
|
|
then
|
|
@group
|
|
if [ -z "$1" ]
|
|
@@ -21551,12 +21575,12 @@
|
|
exit 1
|
|
@end group
|
|
else
|
|
- echo "$1" > /tmp/ig.s.$$
|
|
+ echo "$1" > $STEMPFILE
|
|
shift
|
|
fi
|
|
fi
|
|
|
|
-# at this point, /tmp/ig.s.$$ has the program
|
|
+# at this point, $STEMPFILE has the program
|
|
@c endfile
|
|
@end example
|
|
|
|
@@ -21635,7 +21659,7 @@
|
|
@c endfile
|
|
@end example
|
|
|
|
-The stack is initialized with @code{ARGV[1]}, which will be @file{/tmp/ig.s.$$}.
|
|
+The stack is initialized with @code{ARGV[1]}, which will be @file{$STEMPFILE}.
|
|
The main loop comes next. Input lines are read in succession. Lines that
|
|
do not start with @samp{@@include} are printed verbatim.
|
|
If the line does start with @samp{@@include}, the @value{FN} is in @code{$2}.
|
|
@@ -21681,7 +21705,7 @@
|
|
@}
|
|
close(input[stackptr])
|
|
@}
|
|
-@}' /tmp/ig.s.$$ > /tmp/ig.e.$$
|
|
+@}' $STEMPFILE > $ETEMPFILE
|
|
@c endfile
|
|
@end example
|
|
|
|
@@ -21707,7 +21731,7 @@
|
|
|
|
@example
|
|
@c file eg/prog/igawk.sh
|
|
-eval gawk -f /tmp/ig.e.$$ $opts -- "$@@"
|
|
+eval gawk -f $ETEMPFILE $opts -- "$@@"
|
|
|
|
exit $?
|
|
@c endfile
|