strfile(8)
NAME
- strfile, unstr - create a random access file for storing
- strings
SYNOPSIS
strfile [-iorsx] [-c char] source_file [output_file] unstr source_file
DESCRIPTION
- Strfile reads a file containing groups of lines separated by
- a line con
 taining 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.out.
- The options are as follows:
- -c char Change the delimiting character from the percent
- sign to char.
- -i Ignore case when ordering the strings.
- -o Order the strings in alphabetical order. The off
- set table will
- be sorted in the alphabetical order of the groups
- of lines ref
 erenced. Any initial non-alphanumeric characters
- are ignored.
 This option causes the STR_ORDERED bit in the head
- er str_flags
 field to be set.
- -r Randomize access to the strings. Entries in the
- offset table
- will be randomly ordered. This option causes the
- STR_RANDOM bit
 in the header str_flags field to be set.
- -s Run silently; don't give a summary message when
- finished.
- -x Note that each alphabetic character in the groups
- of lines is
- rotated 13 positions in a simple caesar cypher.
- This option
 causes the STR_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 network 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 out
- put.  It is pos
 sible 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.
SEE ALSO
FILES
strfile.out  default output file.
HISTORY
- The strfile utility first appeared in 4.4BSD.
- 4th Berkeley Distribution June 9, 1993 4th Berkeley