The NFT program is used to access files on remote systems over DECnet or ANF-10. The remote files can be listed (on your terminal), deleted, copied from system to system, renamed, queued to a line printer, or submitted to the batch processor. NFT can perform the same functions on the local system as well as the remote system. The NFT program can be run by using the following monitor command: .R NFT<RET> * * is the command prompt. To the prompt you can type a command string in the following format: *command file-spec=file-spec This construct varies with the command that you are using. The file-spec is a file specification which includes any or all of the following: node::dev:[dir]file.ext.gen/USERID:user:account:password/swt Where "node" is the network node name (or blank for the local host), "dev" is the device or file structure name, "dir" is the file directory containing the file, "file" is the file name, "ext" is the file extension or file type "gen" is the file generation number, and "swt" is/are any file switches desired. The usual TOPS-10 file spec wildcarding rules apply (although the various remote file systems may be more restrictive). /USERID specifies access information for the file, and can optionally take the three arguments (userid:account:password). See below for more information about /USERID. Some commands (e.g., DELETE) require no output specification, and for these commands the equal sign should also be omitted. Other commands (e.g., EXIT) take no arguments. The NFT commands are: COPY copy files from one system to another or one file structure to another. DDT enter DDT (if DDT is present). DELETE delete the specified file(s). DIRECT list the file(s) on your terminal. EXIT exit from NFT to monitor level. HELP display information about the commands that are available. NETWRK display information about network nodes PRINT print a file (queue to system line printer spooler). RENAME rename a file (an output file must be specified on the left-hand side of the equal sign). SUBMIT submit a batch control file to the batch job processor. TYPE display the contents of a file on your terminal. DDELETE delete a single file quickly. DDIRECT list a single file quickly. DRENAME rename a single file quickly. DSUBMIT submit a single batch control file quickly. FAL enter FAL mode. You may include the /USERID switch for each file specification. The /USERID switch can be included in your SWITCH.INI file after the NFT command. The /USERID switch requires up to three arguments in the following format: /USERID:userid:account:password Each argument corresponds to account information for the specific system. If you do not include some of the arguments, NFT will prompt you for them. The userid may be your PPN or user name, optionally enclosed in <> or []. The account can be omitted if defaulted by the system, but you must include the colon (:) if you specify the password. Other general switches that can be specified for any NFT command are: /[NO]MOAN see warning messages about problems. /[NO]OKERROR prevent NFT from aborting the command on an error /TOTALS:arg control the information in the totals summary. Arguments are: BITS, BYTES, WORDS, RECORDS, BLOCKS, PAGES, FILES, BAUD, and ERRORS. The COPY and TYPE commands accept certain switches that apply only to these operations. Those switches are: /[NO]ARROW convert control characters to up-arrow format. /[NO]BAUD show the baud rate of the transfer in the summary. /[NO]CONCAT concatenate (combine) the input files into one output file. /CRLF:nn specify the column at which to place carriage-return/line-feed characters into the file. /[NO]CSN place card sequence numbers on each line in the file. /CSNCOL:nn specify starting column for card sequence numbers. /CSNINC:nn specify the incremental value for card sequence numbers. /CSNWID:nn specify the number of digits in the card sequence numbers. /DIAL:number dial the phone number that you specify. /EBCDIC read data in EBCDIC format. /FLAG:arg specify the type of characters to flag. The arguments are UPPER and LOWER. NFT will place a single-quote character (') before each uppercase or lowercase character. /[NO]LSN generate line sequence numbers for each line (record). /[NO]LSNCON continue line sequence numbers over page boundaries. /LSNINC:nn specify the incremental value for line sequence numbers. /[NO]NULLS preserve ASCII null characters in the file. /[NO]SPACES convert ASCII tab characters into ASCII space characters. /[NO]TABS convert multiple spaces into tab characters. /[NO]TRUNCA suppress trailing ASCII blanks (spaces, tabs). /WRAP:nn insert a carriage-return/line-feed for the first space or tab after the specified number of characters on each line. For more on-line information about the NFT program, refer to the NFT.MAN file distributed with DECnet-10. Use of the NFT program is documented in the DECnet-10 User's Guide. Accessing Files On Different Types of Systems File Generation Numbers Although TOPS-10 does not support file generation numbers, NFT does accept them. The generation number is always preceded by a "." character (yes, even if a VAX or a RSX or other system which normally uses ";"). Naturally, this requirestht the generation number must follow the file extension (which is also preceded by a "." character!). TOPS-10 systems In general, you need do nothing special in order to talk to remote TOPS-10 nodes with NFT-10. Files will automatically be copied in all the right modes, protections, and so on. FAL-10 will default the userid to a generic "network" userid if the remote accessor doesn't supply one explicitly. As such, if you access the -10 from a remote node, you may not need to give a userid if the file you are accessing is sufficiently unprotected (e.g., to read a file on a -10 generally doesn't require a userid, to write a file on a -10 generally does). TOPS-20 systems In general, you need do nothing special in order to talk to remote TOPS-20 nodes with NFT-10. Files will automatically be copied in a fair semblance of the original file (7-bit files will be copied as ASCII files, all others will be copied as 36-bit binary (or IMAGE)) files. Non-contiguous files cannot be copied. RSX systems In general, ASCII files copy correctly from the RSX with no special action required on behalf of the user. Sometimes however you will have to explicitly specify /ASCII (clue: if you get the error message "Illegal ASCII record attributes for IMAGE/BINARY data" you must specify /ASCII). To read or write binary files however is a pain. To read a RSX binary file, you must specify that the file is binary (/BINARY), and what size bytes it has (/BYTESIZE:8). In general, you do not need to supply any record formatting information. To store a RSX binary file on the -10 in such a way that you can give it back to the RSX and have the RSX be able to understand it, you must use MACY11 format. Simply put /MACY11 on the -10 file spec and all (well, the binary file anyway) will work well. To write a RSX binary file, you mus speify that the file is binary (/BINARY), what size bytes it has (/BYTESIZE:8), and what type of records the file should contain (/RECFORMAT: FIXED or VARIABLE). If FIXED length records are specified, then you must also specify the record size explicity (/RECSIZE:size). Additionally, some RSX binary files require that they be contiguous on the disk (/CONTIGUOUS). RSX task images (.TSK files) are of this sort. If contiguous allocation is required then the file allocation must be prespecified - either explicitly via /ALLOCATE (or /ESTIMATE) or implicitly via the "input" file allocation. In the later case the /BLOCKSIZE switch must be used to enable NFT to convert the input file size into the corresponding output file size (measured in "blocks"). For example: *TYPE RSX::PROG.FOR *COPY FOO = RSX::PROG.FOR *COPY RSX::PROG.FOR = FOO.FOR *COPY FOO/MACY11 = RSX::PROG.OBJ/BINARY/BYTESIZE:8 *COPY RSX::PROG.OBJ/BIN/BYT:8/RECFORMAT:VARIABLE = FOO.OBJ/MACY11 *COPY FOO/MACY11 = RSX::PROG.TSK/BINA/BYTES:8 *COPY RSX::/BIN/BYT:8/FIX/EC:512/BLOC:512/CONTI = FOO.TSK/MACY VAX systems Overall, VAX systems are pretty much indistinguishable from RSX systems (as described above). .KJOB