Directory

Encyclopedia

NodeWorks
                              ENCYCLOPEDIA

Link Checker

Home
Encyclopedia : L :

LS

  ( 25 )

ls is a command specified by POSIX and the Single UNIX Specification, and is thus implemented in Unix and Unix-like operating systems. ls, an abbreviation of list, lists files.

History


An ls utility first appeared in Version 5 AT&T UNIX. Its name derives from a similar command in Multics which meant "list segments". Today, two popular versions of ls include the Free Software Foundation's (part of the GNU coreutils package) and the one released by various BSD distributions, such as FreeBSD, OpenBSD, NetBSD, and Apple Computer's Darwin. Both are free software and open source.

Behaviour

Unix and Unix-like operating systems maintain the idea of a current working directory, that is, where one is currently positioned in the hierarchy of directories.

ls when invoked without any arguments, lists the files in the current working directory. A directory that is not the current working directory can be specified and ls will list the files there.

Without options, ls displays files in a bare format. This bare format however makes it difficult to establish the type, permissions, and size of the files. The most common options to reveal this information are:

  • -l: long format, displaying permissions, number of hard links owner, group, size, date, and filename
  • -F appends a character revealing the nature of a file, for example, * for an executable, or / for a directory. Regular files have no suffix.
  • --color (for GNU ls) behaves akin to -F but highlights different types of files with different colors.

    ls has a large number of other options, as can be discovered in the man page. It is one of the most frequently used tools, and is virtually the de-facto interface to the file system via the command line.

    Sample usage


    $ pwd
    /home/fred
    $ ls -l
    drwxr--r-- 1 fred editors 4096 drafts
    -rw-r--r-- 1 fred editors 30405 edition-32
    -r-xr-xr-x 1 fred fred 8460 edit
    $ ls -F
    drafts/
    edition-32
    edit*

    Here we can see that the user fred has a directory named drafts, a regular file called edition-32, and an executable named edit in his home directory. ls uses a special permissions notation that describes what the user, group, and "world" (everyone else) can do to the file. The first character of the permissions line indicates type (d signifies a directory, for example), and the rest of the line is split into blocks of three characters each, with the presence of a r, w, and x signifying the ability to read, write, or execute respectively. The first block represents the permissions for the user, the second for the group, and the third for world. For example, the user fred can read and write the edition-32 file, but not execute it; members of the group editors can only read this file and not write or execute it, as can everyone else.

    See also

  • dir—the command in DOS that lists files, similar to ls.

    External links

  • ls at the LinuxQuestions.org wiki.
  • ls.c source code of the AT&T Version 5 UNIX source code.

    man pages

  • ls man page (FreeBSD)
  • ls man page (GNU ls)
  • ls man page (OpenBSD)



  • NodeWorks boosts web surfing!
    Page Returned in 0.651 seconds - HTML Compressed 69.5%

    This article is from Wikipedia. All text is available
    under the terms of the GNU Free Documentation License.
     GNU Free Documentation License
    © 2008 Chamas Enterprises Inc.