From Fedora Project Wiki

< Docs‎ | Drafts

Revision as of 17:48, 3 June 2008 by Anubis (talk | contribs) (Fixed template)

This page is a draft only
It is still under construction and content may change. Do not rely on the information on this page.

Command Line Survival Guide

Documentation Summary:

Purpose: Document describing theory of the command line and how to perform common tasks.

Audience: Novice end-users needing to use the command line.

Assumptions: The reader has access to a Fedora installation, but no particular type may be assumed. The reader has a user account with the default settings. The reader may have access to the root password.

Related Documents: not yet sure...

Lead Writer: JamesMcElhannon

There are 5 chapters shown below, with the sections numbered. The Concepts chapter sets forth just enough theory to be able to use the commands below.

The Scenario chapter would put forth some common scenarios that people would be faced with. The text would describe the usage of a set of commands to perform a task, cross referenced to the Commonly Used Commands section.

The Commonly Used Commands would not be a reproduction of the man pages, but would instead focus on the common usage of the command.

The Tools would section would be brief scripts to make some things easier. I would expect that the details of this section would arise during the writing of the rest of the text. Any redundant operations shown during the Scenarios would be candidates.


Pages for individual chapters:

Summary of Sections

Brief descriptions of the chapters:


  • General introduction


  • Shells
  • Executables and Processes
  • stdout, stderr, stdin
  • Scripts
  • Permissions
  • Redirection and Pipes
  • Bash prompt customization


  • Handling zip/gz files
  • Handling tar files
  • ...

Commonly Used Commands

  • basename
  • bash
  • bunzip
  • bzip
  • cd
  • chgrp
  • chmod
  • chown
  • clear
  • cp
  • cut
  • echo
  • expr
  • find
  • finger
  • grep
  • gunzip
  • gzip
  • head
  • hostname
  • info
  • kill
  • ln
  • ls
  • man
  • mkdir
  • more
  • mv
  • ping
  • popd
  • ps
  • pushd
  • rm
  • rmdir
  • rpm
  • set
  • stty
  • su
  • sudo
  • tail
  • tar
  • test []
  • traceroute
  • uname
  • wait
  • wc
  • where
  • who am i
  • whoami


  • echodo
  • ...

Feedback from StuartEllis 2006-05-01

This is a very general suggestion - it may be helpful to phrase the "Concepts" headings in terms of tasks, since a new user may not strongly associate the technical features with what they actually do. Some features also relate to more one technology, e.g. a new user who has just read about permissions may be puzzled by "permission denied" messages unless there is at least a mention of SELinux.

This example is just off the top of my head:


  1. Understanding the Command-line Environment
  2. Running Commands
  3. How Logging Works
  4. Automating Commands as Scripts
  5. Understanding Linux Security
  6. Connecting Commands Together
  7. Discovering Commands
  8. Customizing Your Command-line Environment

Section 7 doesn't appear in your ToC - the idea is that if you explain how to discover useful commands, you could focus on only describing a small set of commands yourself, with a clean conscience, rather than feeling obliged to select and cover many. Teach 'em how to fish  :) .

The GNOME desktop help browser in FC5 displays man and info documentation, so the documentation for the hundreds of commands on the system is accessible, but a new user may need pointers to how to locate what they need. The apropos command also enables users to find the right utility, once they are aware of it.