aboutsummaryrefslogtreecommitdiffstats
path: root/awklib/eg/lib
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2010-12-08 22:00:30 +0200
committerArnold D. Robbins <arnold@skeeve.com>2010-12-08 22:00:30 +0200
commitd870c62382223503e9dd75436b6bf6db8d2be2d2 (patch)
tree662c3576c8b787904cf883706d4a6bae97a8e8bc /awklib/eg/lib
parent071f0732801ed668956462649b9ee10cb6794599 (diff)
downloadegawk-d870c62382223503e9dd75436b6bf6db8d2be2d2.tar.gz
egawk-d870c62382223503e9dd75436b6bf6db8d2be2d2.tar.bz2
egawk-d870c62382223503e9dd75436b6bf6db8d2be2d2.zip
More doc udates; functions chapter.
Diffstat (limited to 'awklib/eg/lib')
-rw-r--r--awklib/eg/lib/getopt.awk4
-rw-r--r--awklib/eg/lib/grcat.c5
-rw-r--r--awklib/eg/lib/groupawk.in18
-rw-r--r--awklib/eg/lib/noassign.awk2
-rw-r--r--awklib/eg/lib/passwdawk.in14
-rw-r--r--awklib/eg/lib/pwcat.c5
-rw-r--r--awklib/eg/lib/readable.awk5
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]