PUNCH CMS Transient command Use the PUNCH command to punch a CMS disk file to your virtual punch. The format of the PUNCH command is: +----------+------------------------------------------------------------------+ | PUnch | fn ft [* fm] [([Header|NOHeader] [Member *|membername][)]] | +----------+------------------------------------------------------------------+ where: fn is the filename of the file to be punched. This field must be specified. ft is the filetype of the file to be punched. This field must be specified. fm is the filemode of the file to be punched. If you specify it as an asterisk (*), the standard order of search is followed and the first file found with the specified filename and filetype is punched. If fm is not specified, your A-disk and its extensions are searched. Options: Header | NOHeader inserts a control card in front of the punched output. This control card indicates the filename and filetype for a subsequent READCARD command to restore the file to a disk. The control card format is shown below. NOHeader does not punch a header control card. MEMber * | membername punches members of MACLIBs or TXTLIBs. If an asterisk (*) is entered, all individual members of that macro or text library are punched. If membername is specified, only that member is punched. If the filetype is MACLIB and the MEMBER membername option is specified, the header contains MEMBER as the filetype. If the filetype is TXTLIB and the MEMBER membername option is specified, the header card contains TEXT as the filetype. Header Control Card: Column Field Width Contents Meaning 1 1 : Identifies card as a control card. 2-5 4 READ Identifies card as a READ control card. 6-7 2 blank 8-15 8 fname Filename of file punched. 16 1 blank 17-24 8 ftype Filetype of file punched. 25 1 blank 26-27 2 fmode Filemode of file punched. 28 1 blank 29-34 6 volid Disk label from which file was read. 35 1 blank 36-43 8 mm/dd/yy Date file was last written. 44-45 2 blank 46-50 5 hh:mm Time of day file was written. 51-80 30 blank Usage notes: 1. You can punch fixed- or variable-length records with the PUNCH command, as long as no record exceeds 80 characters. Records with less than 80 characters are right-padded with blanks. Records longer than 80 characters are rejected. PUNCH changes variable-length record files to fixed-length 80-byte record files. 2. If you punch a MACLIB or TXTLIB file specifying the MEMBER * option, a READ control card is placed in front of each library member. If you punch a library without specifying the MEMBER * option, only one READ control card is placed at the front of the deck. 3. One spool punch file is produced for each PUNCH command; for example: punch compute assemble (noh punches the file COMPUTE ASSEMBLE, without inserting a header card. To transmit multiple CMS files as a single punch file, use the CP SPOOL command to spool the punch with the CONT option.