| STRFILE(8) | System Manager's Manual | STRFILE(8) | 
strfile, unstr —
| strfile | [ -iorsx] [-cchar] source_file
      [output_file] | 
| unstr | source_file | 
strfile reads a file containing groups of lines
  separated by a line containing a single percent
  ‘%’ sign and creates a data file which
  contains a header structure and a table of file offsets for each group of
  lines. This allows random access of the strings.
The output file, if not specified on the command line, is named source_file.dat.
The options are as follows:
-c
    char-i-oSTR_ORDERED bit in the header
      str_flags field to be set.-rSTR_RANDOM bit in the header
      str_flags field to be set.-s-xSTR_ROTATED bit in the header
      str_flags field to be set.The format of the header is:
#define VERSION 1 unsigned long str_version; /* version number */ unsigned long str_numstr; /* # of strings in the file */ unsigned long str_longlen; /* length of longest string */ unsigned long str_shortlen; /* length of shortest string */ #define STR_RANDOM 0x1 /* randomized pointers */ #define STR_ORDERED 0x2 /* ordered pointers */ #define STR_ROTATED 0x4 /* rot-13'd text */ unsigned long str_flags; /* bit field for flags */ char str_delim; /* delimiting character */
All fields are written in big-endian byte order.
The purpose of unstr is to undo the work
    of strfile. It prints out the strings contained in
    the file source_file in the order that they are listed
    in the header file source_file.dat
    to standard output. It is possible to create sorted versions of input files
    by using -o when strfile is
    run and then using unstr to dump them out in the
    table order.
strfile utility first appeared in
  4.4BSD.
| January 17, 2010 | NetBSD 9.3 |