ColumnLsDoc.tioga
Bloomenthal, November 25, 1990 0:59 am PST
PCEDAR 2.0 — FOR INTERNAL XEROX USE ONLY
ColumnLs
Jules Bloomenthal
© Copyright 1985, 1989, 1990 Xerox Corporation. All rights reserved.
Abstract: ColumnLs lists files and subdirectories of a given directory in column form.
Created and Maintained by: Jules Bloomenthal:parc
Keywords: columnation, ls, list, filename, directory
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
Syntax
ColumnLs [switches] [filename(s)] [directory(s)]
Overview
ColumnLs is similar to the Unix ls command. ColumnLs prints only the brief form of a file name; it does not print file size, creation date, or version number. Subdirectories are not listed recursively. Multiple versions of the same file are listed only once. Columnation may be in row or column order (row is the default).
Execution time is about the same as for the Unix ls command.
As with the PCedar list command, ColumnLs assumes the appropriate view of a directory. In a ux: view, files beginning with a period are not listed unless the -a switch is given.
If no command line argument is specified, ColumnLs will list all files and subdirectories in the current directory.
If a filename is specified, ColumnLs will list that file (if it exists); if a filename pattern (i.e., a string including one or more asterisks) is specified, ColumnLs will list all files matching the pattern; `/' may be included in the pattern as may be `.' (signifying the current directory) or `..' (signifying the parent directory).
If a directory is to be listed, `/' or `/*' must terminate the directory name.
If no files or directories are found, ColumnLs produces no output. If more than twenty files are listed, ColumnLs prints the number of files.
Switches
-c  column (rather than row) ordered listing.
-f  fixed width font (faster, but less space efficient).
-F  mark subdirectories with a trailing slash.
-d  list subdirectories only.
-x  exact level match: list only files in current directory.
-se  group files according to their extensions.
-e  list file extensions only.
-ne  list only files with no extension.
-a  list files whose names begin with a period.
-no~  don't list backup files (~)
-b  list the base file name only (file name without an extension).
-i  list interfaces only (mesa file with no "impl" appearing in its name).
-ni  list impls (mesa file with "impl" in its name) with no corresponding interface.
-ais  abbreviate listing of color ais files.
-dfi <dfFile> list source interfaces from the named df file.
-dfm <dfFile> list source implementations from the named df file.
-tot  list total number of files only.
Switches may be intermixed with command line arguments. To be listed, a file must satisfy all the given switches.
Examples
% ColumnLs
% ColumnLs -d
% ColumnLs ../ ../*/ -d
% ColumnLs *Impl.mesa *Doc.tioga
% ColumnLs /tilde/<user>/*/foo.*
Notes
Although total execution time is less than the Cedar command list, ColumnLs produces no output until it has enumerated all files in a directory, whereas list begins its output immediately.
Bugs
``% ColumnLs */foobar'' should print ``<somedirectory>/foobar'' but instead prints ``foobar.'' ``% ColumnLs *foobar'' will print ``<somedirectory>/foobar.''
Interfaces
ColumnLs.mesa provides a columnation procedure.