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