oreilly.comSafari Books Online.Conferences.


Linux in a Nutshell

This directory of Linux commands is from Linux in a Nutshell, 5th Edition.

Click on any of the 687 commands below to get a description and list of available options. All links in the command summaries point to the online version of the book on Safari Bookshelf.

Buy it now, or read it online on Safari Bookshelf.


ctags [options] files

Create a list of function and macro names defined in a programming source file. More than one file may be specified. ctags understands many programming languages, including C, C++, FORTRAN, Java, Perl, Python, flex, yacc, and bison. The output list (named tags by default) contains lines of the form:

name file context

where name is the function or macro name, file is the source file in which name is defined, and context is a search pattern that shows the line of code containing name. After the list of tags is created, you can invoke vi on any file and type:

:set tags=tagsfile :tag name

This switches the vi editor to the source file associated with the name listed in tagsfile (which you specify with -t).

etags produces an equivalent file for tags to be used with Emacs.



Append tag output to existing list of tags.


Create tag files for use with emacs.

-h extensionlist

Interpret files with filename extensions specified in extensionlist as header files. The default list is "". To indicate that files without extensions should be treated as header files, insert an additional period in the list before another period or at the end of the list, or use just a period by itself. To use this option multiple times and have the specified lists ANDed together, use a plus sign as the first character in the list. To restore the default, use the word "default".


Use numeric ex commands to locate tags. Same as --excmd= number.

-o file, -f file, --output=file

Write to file.


Include tag entries for members of structure-like constructs.


Recursively read files in subdirectories of the directory given on the command line.


Don't sort tag entries.


Produce a tabular listing of each function, and its line number, source file, and context.


Search for tags backward through files.

-I tokenlist

Specify a list of tokens to be specially handled. If tokenlist is given as a file, use ex pattern commands to locate tags. Same as --excmd=pattern.


Use ex pattern commands to locate tags. Same as --excmd= pattern.

-S, --ignore-indentation

Normally ctags uses indentation to parse the tag file; this option tells ctags to rely on indentation less.

-T, --typedefs-and-c++

Include tag entries for typedefs, structs, enums, unions, and C++ member functions.

-V, --version

Print the version number and exit.

Linux Resources
  • Linux Online
  • The Linux FAQ
  • Linux Kernel Archives
  • Kernel Traffic

  • Sponsored by: