UULS(1) HP-UX 5.0 UULS(1) NAME uuls - list spooled uucp transactions grouped by transaction SYNOPSIS uuls [-m] [directories...] uuls -s [-m] [directories...] uuls -k [-m] [directories...] HP-UX COMPATIBILITY Level: HP-UX/STANDARD Origin: HP DESCRIPTION This command lists the contents of uucp spool directories (default "/usr/spool/uucp") with the files grouped into three categories: Transactions: Each line starts with a transaction control filename and includes the name of each local (same-directory) subfile referenced by the control file (see below). Each is possibly followed by the total size in bytes (-s option) or Kbytes (-k option) in the transaction (see below). The -m (meanings) option replaces the subfile names with nodename, user, and commandline information (see below). Orphans: All subfiles not referenced by any control file. Others: All other files in the directory (all files not listed under one of the above categories). Filenames are columnated so there may be more than one file per line. If a transaction has more subfiles than fit on one line, it is followed by continuation lines which are indented further. The -s (size in bytes) and -k (Kbytes) options cause the command to follow each transaction in the Transactions section with a total size for all stat-able, sendable files in that transaction. This includes "D.*" files only, not "C.*" or "X.*" files. It does include stat-able files outside the spool directory which are indirectly referenced by "C.*" files. Sizes are either in bytes or rounded to the nearest Kbyte (1024 bytes), respectively. A totals line is also added at the end of the Transactions section. The -m (meanings) option causes the command to follow "C.*" and "X.*" files with a "nodename!username commandline" line, instead of subfilenames. For "C" files, one line is printed per remote execution ("D*X*") subfile it references. Nodename is truncated at seven characters, username at eight, and commandline at however much fits on one line. If -m is given, for each "C" file with no remote execution files, the command instead shows the meaning of the "C" file itself on one or more lines. Each line consists of a username, then "R" (receive) or "S" (send), then the name of the file to be transferred. See below for details. Filenames are listed in alphabetical order within each section, except that the first section is only sorted by the control filename. Every file in the directory except "." and ".." appears exactly once in the entire list, unless -m is used. Details Transaction files are those whose names start with "C." or "X.". Subfilenames, which usually start with "D.", are gleaned from control file lines, at most one per line, from blank-separated fields, as follows: C.*: R - C.*: S - X.*: F Lines that don't begin with the appropriate character ('R', 'S', or 'F') are ignored. In the "R" (receive) case, is used to print the "C"-file meaning, and its transaction size is taken as zero (unknown). In the "S" (send) case, if is "D.0", is a file not in the spool directory, resulting from a typical uucp call without the -C (copy) option. In this case is used for the transaction size, if stat- able, and to print the "C"-file meaning. uucp -C and uux both set to a true (spooled) subfile name. Orphan files are those whose names start with "D." and which are not referenced by any control files. This algorithm extracts from control files the names of all subfiles which should exist in the spool directory when the transaction is not being actively processed. It is not unusual to see "missing subfiles" and "orphans" if you uuls a spool directory while uucico, uucp, uux, or uuxqt is active. Meanings information is gotten by reading each "D*X*" subfile referenced by each "C.*" file, and by reading "X*X*" files. Nodename!username is taken from the last line in the file which is of the form: U Likewise, commandline is taken from the last line of the form: C If a subfile name is referenced more than once, references after the first show the subfile as missing. If a subfile name appears in a (corrupt) directory more than once, the name is only found once, but then it is listed again under Orphans. HARDWARE DEPENDENCIES Uuls uses directory(3x), but it truncates filenames to 14 characters. This should cause no problems, even if longer names are allowed, due to the uucp file naming conventions. SEE ALSO mail(1), uucp(1), uuto(1), uux(1), uuxqt(1), stat(2). DIAGNOSTICS The program writes an appropriate message to standard error if it has any problems dealing with a specified file (directory), including failure to get heap space. It always returns zero as its exit value. If a control file is unopenable (wrong permissions or it disappeared while uuls was running), its name is preceded by a "*" and the size of the transaction is zero. If a subfile is missing (filename not found in the directory being listed) or un-stat-able (if required for -s or -k), its name is preceded by a "*" and it contributes zero bytes to the size of the transaction. If -m is specified and a "D*X*" file is missing or unreadable, its name is given with a "*" prepended, as usual. BUGS This command uses chdir(2) to change to each directory in turn. If more than one is specified, the second through last directories must be absolute (not relative) pathnames, or the chdir() may fail. (This could be fixed, but might result in the program running slower.)