ls
Lists VOB-resident objects, elements loaded into a snapshot view, and view-private objects in a directory
Applicability
Product |
Command type |
---|---|
ClearCase® |
cleartool subcommand |
ClearCase Remote Client |
rcleartool subcommand |
Platform |
---|
UNIX |
Linux |
Windows |
Synopsis
- ls [ -r/ecurse | -d/irectory ] [ -l/ong | -s/hort ] [ -vob/_only
- | -vie/w_only ] [ -nxn/ame ] [ -vis/ible ] [ pname ... ]
Description
The ls command lists VOB-resident objects, elements loaded into a snapshot view or web view, and view-private objects in a directory.
The default listing includes this information:
- The name of each element cataloged in the current directory, with the version ID of the particular version in the view. Also included is the version selector part of the config spec rule that selects this version. In a snapshot view, you see the message <rule info unavailable> if ls encounters errors.
- The name of each view-private object in the current directory
- In a dynamic view, the name of each derived object (DO) that is visible in the view, along with its unique DO ID
The listing for an element or a derived object in a dynamic view may also include an annotation that indicates an unusual or noteworthy state. For example, the listing for an element that has been checked out to your view identifies the version that was checked out:
hello.c@@/main/CHECKEDOUT from /main/4 Rule: CHECKEDOUT
On Linux and UNIX systems, symbolic links are listed as absolute pathnames by default. To list symbolic links as relative pathnames, set the environment variable CCASE_LS_RELATIVE_SYMLINK_PATH.
Annotations common to all view types
You may see the following annotations when you issue ls from any type of view:
- eclipsed
- No version of the element is selected because a view-private object with the same name exists in your view. Typical occurrence: you create a view-private file in your view; then an element with the same path name is created in another view. In your view, an ls -vob_only shows the element to be eclipsed.
- eclipsed by checkout
- (Displayed only when you use the -vob_only option) No version from the element's version tree is selected, because the element has been checked out in this view, and a checked-out version always eclipses all checked-in versions.
- checkedout but eclipsed
- The element has been checked out in this view, but there is no CHECKEDOUT config spec rule; thus, the checked-out version is not visible in the view.
- checkedout but removed
- The element was checked out in this view, but the view-private file was subsequently removed.
You may have deleted the file. ClearCase removes
it (in effect) when you check out a file with checkout
-out or when you check out a DO version. Note: If a file element has several names, by virtue of one or more VOB hard links, checking out the element under one name causes all the other names to be listed with this annotation. (The element is checked out, but there are no view-private files with the other names.)
- no version selected
- The element is not selected by any config spec rule or is selected by a -none config spec rule.
- error on reference
- The element is selected by an -error config spec rule.
Annotations on UNIX and Linux common to all view types
- view-->vob hard link
- The object is a view-private (operating system level) hard link to an object in VOB storage.
Annotations specific to dynamic views
You may see the following annotations when you issue ls from a dynamic view:
- no config record
- (Shareable derived objects only) The derived object's data container is still stored in the view, but the derived object in the VOB database (and, typically, its associated configuration record) have been deleted by rmdo. This can occur only in the view in which the derived object was originally built.
- disputed checkout
- The element is considered to be checked out by the view_server but is not so indicated in the VOB database (or vice versa). This can occur during the short interval in which a checkin or checkout is in progress. For information about view_server, see the DevOps Code ClearCase Administrator's Guide.
- removed with white out
- The derived object was winked in by, and is still referenced by, the current view, but it has been forcibly removed from the VOB database with rmdo. The derived object is not recoverable.
Annotations specific to snapshot and web views
You may see the following annotations when you issue ls from a snapshot or web view:
- not loaded
- The element is not loaded into the view. Either there are no load rules specifying the element, or the version-selection rules do not select any version of the element.
- loaded but missing
- A version of the element was loaded into the view, but you have deleted or renamed the file in the view. To copy the version back into the view, use the cleartool get command ( that generates a hijacked file) or update your snapshot or web view, specifying the path name to the missing file.
- hijacked
- The version in the view was modified without being checked out.
- overridden
- The element is loaded in the view, but its file type is not the same as the corresponding object in the VOB; or the element is not loaded in the view, but an object with the same name exists in the view.
- special selection
- The version you checked in (and, hence, the version currently in the view) is not the version that the config spec selects from the VOB. For more information, see the section Actions taken in the view in the checkin reference page.
- nocheckout
- The version hijacked in the view is no longer the version the
config spec selects from the VOB. To prevent losing changes in the
version selected by the config spec, you cannot check out the hijacked
file. To check in your modifications, you must fix the hijack condition:
- Rename the hijacked file and update the file.
- Check out the version from which you hijacked the file.
- Copy your hijacked file over the checked-out version.
- Merge from the current version to your checked-out version.
You can now check in your version.
(You can use the graphical update tool to do the checkout and merge operations.)
- deleted version
- The version currently in the view has been removed from the VOB (for example, by the rmver command). Use the update command to copy a valid version into the view.
Elements suppressed from the view
The listing includes elements selected with -none and -error config spec rules, and elements that are not selected by any config spec rule. UNIX and Linux commands, such as ls(1) and cat(1), return not found errors when accessing such elements. You can specify such elements in commands that access the VOB database only, such as describe, lsvtree, and mklabel.
Restrictions
ACL authorization
If ACLs are enabled, the principal must have the permission read-info on VOB object to list elements or versions.
Non-ACL restrictions
If ACLs are not enabled, no restrictions apply.
Options and arguments
Handling of directory arguments
- Default
- For each pname that specifies a directory element, ls lists
the contents of that directory, but not the contents of any of its
subdirectories. Note: This includes directories in version-extended namespace, which represent elements and their branches. For example, specifying foo.c@@/main/bug403 as an argument lists the contents of that branch: all the versions on the branch.
- -r/ecurse
- Includes a listing of the entire subtree below any subdirectory included in the top-level listing. VOB symbolic links are not traversed during the recursive descent.
- -d/irectory
- Lists information on a directory itself, rather than its contents.
Report format
- Default
- The default report format is described in the Description section.
- -l/ong
- For each object, lists the config spec rule that matches the object and classifies each object. The classification can be one of: version, directory version, file element, directory element, view-private object, derived object, derived object version, or symbolic link. For each derived object, ls -long indicates whether the DO is nonshareable, unshared, promoted, or shared.
- -s/hort
- Restricts the listing of each entry to its version-extended path name only.
- -nxn/ame
- Lists simple path names instead of version-extended path names.
VOB/view restriction
- Default
- The listing includes both objects in VOB storage and objects in view storage.
- -vob/_only
- Restricts the listing to objects in the VOB storage, including versions of elements and VOB links. This may also add some entries to the listing: those for the underlying elements that are eclipsed by checked-out versions.
- -vie/w_only
- Restricts the listing to objects that belong logically to the view: view-private files,
view-private directories, and view-private links; checked-out versions; and all derived objects
visible in the view. Note: Checked-out directories are listed by -vob_only, but not by -view_only.Note: Derived objects visible in the view are listed by -view_only (but not -vob_only), regardless of whether they are (or ever have been) shared.
- -vis/ible
- Restricts the listing to objects visible to the operating system listing command.
Specifying the objects to be listed
- Default
- The current working directory (equivalent to specifying a dot (.) as the pname argument). If you do not specify any other options, all files and links in the current working directory are listed; all subdirectory entries are listed, but not the contents of these subdirectories.
- pname ...
- Restricts the listing to the specified files, directories, links, or both. pname may be a view- or VOB-extended path name to list objects that are not in the view, regardless of whether the view is a snapshot view or a dynamic view (see pathnames_ccase).
Examples
The UNIX system and Linux examples in this section are written for use in csh. If you use another shell, you might need to use different quoting and escaping conventions.
The Windows examples that include wildcards or quoting are written for use in cleartool interactive mode. If you use cleartool single-command mode, you might need to change the wildcards and quoting to make your command interpreter process the command appropriately.
In cleartool single-command mode, cmd-context represents the UNIX system and Linux shells or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt.
- List the VOB-resident objects and
view-private objects in the current working directory.
cmd-context ls
Makefile@@/main/3 Rule: /main/LATEST
bug.report
cm_add.c@@/main/0 Rule: /main/LATEST
cm_fill.c@@/main/0 Rule: /main/LATEST
convolution.c@@/main/CHECKEDOUT from /main/0 Rule: CHECKEDOUT
edge.sh
hello@@2007-03-24T11:32.418
hello.c@@/main/CHECKEDOUT from /main/4 Rule: CHECKEDOUT
hello.h@@/main/CHECKEDOUT from /main/2 Rule: CHECKEDOUT
hello.o@@2007-03-24T11:32.412
hw.c@@/main/4 Rule: /main/LATEST
include@@/main/CHECKEDOUT Rule: CHECKEDOUT - List the objects in the current working
directory, with annotations.
cmd-context ls -long
version Makefile@@\main\3 Rule: element * \main\LATEST
view private object bug.report
version cm_add.c@@\main\0 Rule: element * \main\LATEST
derived object (unshared) hello@@2007-03-24T11:32.418
version hello.h@@\main\CHECKEDOUT from \main\2
Rule: element * CHECKEDOUT
derived object (unshared) hello.o@@2007-03-24T11:32.412
directory version include@@\main\CHECKEDOUT
Rule: element * CHECKEDOUT
symbolic link messages.c --> msg.c
version msg.c@@\main\1 Rule: element * \main\LATEST
view private object util.c.contrib - List only the view-private objects
in the current working directory.
cmd-context ls -view_only
bug.report
hello@@2007-03-24T11:32.418
hello.c@@/main/CHECKEDOUT from /main/4 Rule: CHECKEDOUT
hello.h@@/main/CHECKEDOUT from /main/2 Rule: CHECKEDOUT
hello.o@@2007-03-24T11:32.412
msg.o@@2007-03-23T20:42.379
util.c@@/main/CHECKEDOUT from /main/4 Rule: CHECKEDOUT
util.o@@2007-03-24T11:32.415 - List the contents of the directory
in extended namespace that corresponds to the main branch of
element util.c.
cmd-context ls util.c@@\main
util.c@@\main\0
util.c@@\main\1
util.c@@\main\2
util.c@@\main\3
util.c@@\main\CHECKEDOUT
util.c@@\main\LATEST
util.c@@\main\REL2
util.c@@\main\REL3
util.c@@\main\rel2_bugfix
view private object util.c.contrib - List the directory version that is visible in the current view:
cmd-context ls -directory -vob_only
.@@/main/CHECKEDOUT from /main/4 Rule: CHECKEDOUT