diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2010-12-08 22:00:30 +0200 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2010-12-08 22:00:30 +0200 |
commit | d870c62382223503e9dd75436b6bf6db8d2be2d2 (patch) | |
tree | 662c3576c8b787904cf883706d4a6bae97a8e8bc /awklib | |
parent | 071f0732801ed668956462649b9ee10cb6794599 (diff) | |
download | egawk-d870c62382223503e9dd75436b6bf6db8d2be2d2.tar.gz egawk-d870c62382223503e9dd75436b6bf6db8d2be2d2.tar.bz2 egawk-d870c62382223503e9dd75436b6bf6db8d2be2d2.zip |
More doc udates; functions chapter.
Diffstat (limited to 'awklib')
-rw-r--r-- | awklib/eg/lib/getopt.awk | 4 | ||||
-rw-r--r-- | awklib/eg/lib/grcat.c | 5 | ||||
-rw-r--r-- | awklib/eg/lib/groupawk.in | 18 | ||||
-rw-r--r-- | awklib/eg/lib/noassign.awk | 2 | ||||
-rw-r--r-- | awklib/eg/lib/passwdawk.in | 14 | ||||
-rw-r--r-- | awklib/eg/lib/pwcat.c | 5 | ||||
-rw-r--r-- | awklib/eg/lib/readable.awk | 5 |
7 files changed, 23 insertions, 30 deletions
diff --git a/awklib/eg/lib/getopt.awk b/awklib/eg/lib/getopt.awk index 0e3421a9..d3dd9c16 100644 --- a/awklib/eg/lib/getopt.awk +++ b/awklib/eg/lib/getopt.awk @@ -1,4 +1,4 @@ -# getopt.awk --- do C library getopt(3) function in awk +# getopt.awk --- Do C library getopt(3) function in awk # # Arnold Robbins, arnold@skeeve.com, Public Domain # @@ -13,7 +13,7 @@ # Returns: # -1 at end of options -# ? for unrecognized option +# "?" for unrecognized option # <c> a character representing the current option # Private Data: diff --git a/awklib/eg/lib/grcat.c b/awklib/eg/lib/grcat.c index 6c36fe96..ff2913a1 100644 --- a/awklib/eg/lib/grcat.c +++ b/awklib/eg/lib/grcat.c @@ -6,6 +6,7 @@ /* * Arnold Robbins, arnold@skeeve.com, May 1993 * Public Domain + * December 2010, move to ANSI C definition for main(). */ /* For OS/2, do nothing. */ @@ -24,9 +25,7 @@ int main() { return 0; } #include <grp.h> int -main(argc, argv) -int argc; -char **argv; +main(int argc, char **argv) { struct group *g; int i; diff --git a/awklib/eg/lib/groupawk.in b/awklib/eg/lib/groupawk.in index a9e10e1f..1331a463 100644 --- a/awklib/eg/lib/groupawk.in +++ b/awklib/eg/lib/groupawk.in @@ -3,6 +3,7 @@ # Arnold Robbins, arnold@skeeve.com, Public Domain # May 1993 # Revised October 2000 +# Revised December 2010 BEGIN \ { @@ -11,7 +12,7 @@ BEGIN \ } function _gr_init( oldfs, oldrs, olddol0, grcat, - using_fw, n, a, i) + using_fw, using_fpat, n, a, i) { if (_gr_inited) return @@ -48,34 +49,29 @@ function _gr_init( oldfs, oldrs, olddol0, grcat, close(grcat) _gr_count = 0 _gr_inited++ - FS = oldfs if (using_fw) FIELDWIDTHS = FIELDWIDTHS else if (using_fpat) FPAT = FPAT + else + FS = oldfs RS = oldrs $0 = olddol0 } function getgrnam(group) { _gr_init() - if (group in _gr_byname) - return _gr_byname[group] - return "" + return _gr_byname[group] } function getgrgid(gid) { _gr_init() - if (gid in _gr_bygid) - return _gr_bygid[gid] - return "" + return _gr_bygid[gid] } function getgruser(user) { _gr_init() - if (user in _gr_groupsbyuser) - return _gr_groupsbyuser[user] - return "" + return _gr_groupsbyuser[user] } function getgrent() { diff --git a/awklib/eg/lib/noassign.awk b/awklib/eg/lib/noassign.awk index 2ad1f378..1f750edf 100644 --- a/awklib/eg/lib/noassign.awk +++ b/awklib/eg/lib/noassign.awk @@ -7,7 +7,7 @@ function disable_assigns(argc, argv, i) { for (i = 1; i < argc; i++) - if (argv[i] ~ /^[A-Za-z_][A-Za-z_0-9]*=.*/) + if (argv[i] ~ /^[[:alpha:]_][[:alnum:]_]*=.*/) argv[i] = ("./" argv[i]) } diff --git a/awklib/eg/lib/passwdawk.in b/awklib/eg/lib/passwdawk.in index 323ebf58..4cbbaaf9 100644 --- a/awklib/eg/lib/passwdawk.in +++ b/awklib/eg/lib/passwdawk.in @@ -3,13 +3,14 @@ # Arnold Robbins, arnold@skeeve.com, Public Domain # May 1993 # Revised October 2000 +# Revised December 2010 BEGIN { # tailor this to suit your system _pw_awklib = "/usr/local/libexec/awk/" } -function _pw_init( oldfs, oldrs, olddol0, pwcat, using_fw) +function _pw_init( oldfs, oldrs, olddol0, pwcat, using_fw, using_fpat) { if (_pw_inited) return @@ -31,27 +32,24 @@ function _pw_init( oldfs, oldrs, olddol0, pwcat, using_fw) close(pwcat) _pw_count = 0 _pw_inited = 1 - FS = oldfs if (using_fw) FIELDWIDTHS = FIELDWIDTHS else if (using_fpat) FPAT = FPAT + else + FS = oldfs RS = oldrs $0 = olddol0 } function getpwnam(name) { _pw_init() - if (name in _pw_byname) - return _pw_byname[name] - return "" + return _pw_byname[name] } function getpwuid(uid) { _pw_init() - if (uid in _pw_byuid) - return _pw_byuid[uid] - return "" + return _pw_byuid[uid] } function getpwent() { diff --git a/awklib/eg/lib/pwcat.c b/awklib/eg/lib/pwcat.c index 6b5c7858..910e0329 100644 --- a/awklib/eg/lib/pwcat.c +++ b/awklib/eg/lib/pwcat.c @@ -6,6 +6,7 @@ /* * Arnold Robbins, arnold@skeeve.com, May 1993 * Public Domain + * December 2010, move to ANSI C definition for main(). */ #if HAVE_CONFIG_H @@ -20,9 +21,7 @@ #endif int -main(argc, argv) -int argc; -char **argv; +main(int argc, char **argv) { struct passwd *p; diff --git a/awklib/eg/lib/readable.awk b/awklib/eg/lib/readable.awk index dbbab578..6942dcca 100644 --- a/awklib/eg/lib/readable.awk +++ b/awklib/eg/lib/readable.awk @@ -2,11 +2,12 @@ # # Arnold Robbins, arnold@skeeve.com, Public Domain # October 2000 +# December 2010 BEGIN { for (i = 1; i < ARGC; i++) { - if (ARGV[i] ~ /^[A-Za-z_][A-Za-z0-9_]*=.*/ \ - || ARGV[i] == "-") + if (ARGV[i] ~ /^[[:alpha:]_][[:alnum:]_]*=.*/ \ + || ARGV[i] == "-" || ARGV[i] == "/dev/stdin") continue # assignment or standard input else if ((getline junk < ARGV[i]) < 0) # unreadable delete ARGV[i] |