NAME
unblock_dlg - Insert linefeeds into an optional-format Digital Line
Graph (DLG) file
SYNOPSIS
unblock_dlg [-L]
DESCRIPTION
The drawmap program processes USGS optional-format Digital Line Graph
(DLG) files (along with other types of files) to produce customized
maps. Drawmap is able to read these files in their native format.
However, since the files usually don’t contain any linefeeds, they are
difficult for a human to read. Unblock_dlg filters a DLG file and
inserts linefeeds for human readability. It takes input from the
standard input and writes to the standard output. The input data must
be in uncompressed form, not in gzip-compressed form. Also,
unblock_dlg does not work with SDTS DLG files.
Unblock_dlg normally takes no options, but, if you use the "-L" option,
the program will print out some license information and exit.
Some DLG files already have embedded linefeeds. Unblock_dlg makes a
feeble attempt to detect these files and abort. If the detection
fails, the results are likely to be garbled, so it is wise to check the
format of each file first. The drawmap program, with the "-i" option,
will attempt to tell you whether a file contains linefeeds or not.
The intended use of unblock_dlg is simply to let you conveniently
examine the files to see what is in them. However, if you are in the
mood for adventure, or if you need to repair a defective file, you can
use unblock_dlg to make the file easy to edit, then you can edit the
file as desired. Drawmap can still process the files after linefeeds
are inserted, but will become confused if any line (including the
linefeed) is more than 80 characters long. Drawmap may also become
confused if you make any significant changes to the format of the file.
You can use this capability to remove selected items from DLG files,
when those items cause problems. You may even be able to repair faulty
data. However, you need to be familiar with the content and structure
of DLG files in order to do this effectively. You also need to
remember that drawmap depends on DLG files having a predictable
structure, and it won’t properly parse files that violate this
predictability. Do this sort of thing only if you know what you are
doing, or if you have a lot of free time on your hands.
It should be noted that you can obtain a similar effect by using the
command recommended by the USGS:
dd if=inputfilename of=outputfilename ibs=8000 cbs=80 conv=unblock
I prefer the unblock_dlg command because it simply replaces the last
byte of each record with a linefeed. This lets me easily tell how long
the original records were. The effect of unblock_dlg or dd can be
undone by typing:
dd if=inputfilename of=outputfilename ibs=8000 cbs=80 conv=block
You may come across files that have a linefeed in the 81st byte.
Drawmap doesn’t like these, both because it can’t tell (within the
space of the first 80-byte record) whether the file contains linefeeds
or not, and because the records exceed the maximum record length of 80
bytes. You may be able to repair such files by blocking them with the
above dd command.
SEE ALSO
unblock_dem(1), drawmap(1)
Jul 24, 2001