writea, reada - write and read gawk arrays to/from files


   @load "rwarray"

   ret = writea(file, array)
   ret = reada(file, array)


   The  rwarray extension adds two functions named writea().  and reada(),
   as follows.

          This function takes a string argument, which is the name of  the
          file to which dump the array, and the array itself as the second
          argument.  writea()  understands  multidimensional  arrays.   It
          returns one on success, or zero upon failure.

          is the inverse of writea(); it reads the file named as its first
          argument, filling in the array named as the second argument.  It
          clears  the  array  first.  Here too, the return value is one on
          success and zero upon failure.


   The array created by reada() is identical to that written  by  writea()
   in  the  sense  that  the  contents  are  the  same.  However,  due  to
   implementation issues, the array traversal order of the recreated array
   will  likely  be  different  from that of the original array.  As array
   traversal  order  in  AWK  is  by  default  undefined,  this   is   not
   (technically)  a  problem.   If  you  need  to  guarantee  a particular
   traversal order, use the array sorting features in gawk to do so.

   The file contains binary data.  All  integral  values  are  written  in
   network  byte  order.   However, double precision floating-point values
   are written as native binary data.  Thus, arrays containing only string
   data  can  theoretically  be  dumped on systems with one byte order and
   restored on systems with a different one, but this has not been tried.


   @load "rwarray"
   ret = writea("arraydump.bin", array)
   ret = reada("arraydump.bin", array)


   GAWK:  Effective   AWK   Programming,   filefuncs(3am),   fnmatch(3am),
   fork(3am),   inplace(3am),  ordchr(3am),  readdir(3am),  readfile(3am),
   revoutput(3am), time(3am).


   Arnold Robbins,


   Copyright  2012, 2013, Free Software Foundation, Inc.

   Permission is granted to make and distribute verbatim  copies  of  this
   manual  page  provided  the copyright notice and this permission notice
   are preserved on all copies.

   Permission is granted to copy and distribute modified versions of  this
   manual  page  under  the conditions for verbatim copying, provided that
   the entire resulting derived work is distributed under the terms  of  a
   permission notice identical to this one.

   Permission  is  granted  to  copy  and  distribute translations of this
   manual page into another  language,  under  the  above  conditions  for
   modified  versions, except that this permission notice may be stated in
   a translation approved by the Foundation.

More Linux Commands

trace(3ncurses) - curses debugging routines - Linux man page
The trace routines are used for debugging the ncurses libraries, as well as applications which use the ncurses libraries. These functions are normally available

mkfs.ext2(8) - create an ext2/ext3/ext4 filesystem (ManPage)
mke2fs is used to create an ext2, ext3, or ext4 filesystem, usually in a disk partition (or file) named by device. The file system size is specified by fs-size.

David and all the people who followed him went out
all the officers and the royal body-guard and all the men of Ittai the Gittite, the six hundred who had followed him from Gath

mtools(5) - mtools configuration files - Linux manual page
This manual page describes the configuration files for mtools. They are called /etc/mtools.conf and ~/.mtoolsrc. If the environmental variable MTOOLSRC is set,

XML::XPath::Node::PI(3pm) - an XML processing instruction no
new ( target, data ) Create a new PI node. getTarget Returns the target getData Returns the data XML::XPath::Node::PI.3pm ....(Library - Linux manual page)

Tk_InitOptions(3) - process configuration options (ManPage)
These procedures handle most of the details of parsing configuration options such as those for Tk widgets. Given a description of what options are supported, th

s_client(1ssl) - SSL/TLS client program - Linux manual page
The s_client command implements a generic SSL/TLS client which connects to a remote host using SSL/TLS. It is a very useful diagnostic tool for SSL servers. OPT

oldfind(1) search for files in a directory hierarchy........
The oldfind and find programs are functionally identical. The only difference between them is the implementation internals of how the filesystem is searched. Th

ofxdump(1) Dump content of OFX files as human-readable text
ofxdump 0.9.9 ofxdump prints to stdout, in human readable form, everything the library understands about a particular file or response, and sends errors to stde

hciconfig(8) - configure Bluetooth devices - Linux man page
hciconfig.8 - hciconfig is used to configure Bluetooth devices. hciX is the name of a Bluetooth device installed in the system. If hciX is not given, hciconfig

rediff(1) - fix offsets and counts of a hand-edited diff....
rediff.1 - You can use rediff to correct a hand-edited unified diff. Take a copy of the diff you want to edit, and edit it without changing any offsets or count

gai_suspend(3) - asynchronous network address and service tr
The getaddrinfo_a() function performs the same task as getaddrinfo(3), but allows multiple name look-ups to be performed asynchronously, with optional notificat

We can't live, work or learn in freedom unless the software we use is free.