Bytestream record formats can exist in both the MPE/iX and
POSIX namespace. The purpose of this new record format is to provide
an emulated file format which exists on character-oriented file
systems, where the user application is responsible for defining where
logical records begin and end.
To create such a file, use the build parameters:
ftp> put <source-file> <target-file>;rec=,,b
The (b) references the bytestream record type. Note that
no record size is given. This is because bytestream files always
have 1 byte records; any other value would be overwritten. Similarly
bytestream files are always MPE file type ASCII as opposed to Binary.
Regardless of whether they are MPE file type ASCII or Binary, they
may be transferred in either FTP ASCII or Binary transfer mode.
The "[B]" is the bytestream record type specification.
Example:
This sample of a bytestream file, a copy from CATALOG.PUB.SYS which is
a (80) Byte per Record, Fixed ASCII file, to the bytestream record format which
is a (1) Byte per Record Bytestream ASCII file.
:copy catalog.pub.sys,asciifix
:build bytestrm;rec=,,b;disc=2000000
:fcopy from=asciifix;to=bytestrm ;nouserlabels
HP31900A.05.02 FILE COPIER (c) HEWLETT-PACKARD CO. 1990
*200*WARNING: FROMFILE RECSIZE IS 80 BYTES, TOFILE RECSIZE IS 8192
BYTES.
CONTINUE OPERATION (Y OR N) ?yes
EOF FOUND IN FROMFILE AFTER RECORD 13819
13820 RECORDS PROCESSED *** 0 ERRORS
:listf ,2
ACCOUNT= SYS GROUP= WORK
FILENAME CODE ------------LOGICAL RECORD----------- ----SPACE----
SIZE TYP EOF LIMIT R/B SECTORS #X MX
ASCIIFIX 80B FA 13820 13820 16 4304 1 *
BYTESTRM 1B BA 1119420 2000000 1 4608 18 *
NOTE: The BYTESRM file contains 80 (record size) x 13820 (number
of records) plus 13820 (the number of line feed (hexadecimal $0A)
record terminator characters).