rwarray(3) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

rwarray(3)

RWARRAY(3)                 GNU Awk Extension Modules                RWARRAY(3)

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

SYNOPSIS
       @load "rwarray"

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

DESCRIPTION
       The  rwarray  extension  adds  functions   named   writea(),   reada(),
       writeall(), and readall(), as follows.

       writea()
              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 re‐
              turns one on success, or zero upon failure.

       reada()
              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.

       writeall()
              This function takes a string argument, which is the name of  the
              file  to  which  dump  the  state of all variables. Calling this
              function is completely equivalent to calling writea()  with  the
              second  argument equal to SYMTAB.  It returns one on success, or
              zero upon failure.

       readall()
              This function takes a string argument, which is the name of  the
              file  from  which  to  read the contents of various global vari‐
              ables.  For each variable in the file, the data is loaded unless
              the variable already exists. If the variable already exists, the
              data for that variable in the file is ignored.  It  returns  one
              on success, or zero upon failure.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       box; cbp-1 | cbp-1 l | l .  ATTRIBUTE TYPE ATTRIBUTE VALUE = Availabil‐
       ity   text/gawk = Stability Volatile

NOTES
       The  array  created by reada() is identical to that written by writea()
       in the sense that the contents are the same. However, due to  implemen‐
       tation  issues,  the  array traversal order of the recreated array will
       likely be different from that of the original array.  As array  traver‐
       sal  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 net‐
       work  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 re‐
       stored on systems with a different one, but this has not been tried.

       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This software was built from source available at:
       https://github.com/oracle/solaris-userland

       The original community source was downloaded from:
       https://ftp.gnu.org/gnu/gawk/gawk-5.3.0.tar.xz

       Further information about this software can be found on the open source
       community website at https://www.gnu.org/software/gawk.

EXAMPLE
       @load "rwarray"
       ...
       ret = writea("arraydump.bin", array)
       ...
       ret = reada("arraydump.bin", array)
       ...
       ret = writeall("globalstate.bin")
       ...
       ret = readall("globalstate.bin")

SEE ALSO
       GAWK: Effective AWK Programming, filefuncs(3), fnmatch(3), fork(3), in‐
       place(3), ordchr(3), readdir(3), readfile(3), revoutput(3), time(3).

AUTHOR
       Arnold Robbins, arnold@skeeve.com.

COPYING PERMISSIONS
       Copyright © 2012, 2013, 2018, 2022 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 man‐
       ual page into another language, under the above conditions for modified
       versions, except that this permission notice may be stated in a  trans‐
       lation approved by the Foundation.


Free Software Foundation          Mar 11 2022                       RWARRAY(3)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3