Red Hat Enterprise Linux 4: Red Hat Enterprise Linux Step By Step Guide
Prev | Chapter 3. Managing Files and Directories | Next

# 3.3. Managing Files

If you are new to Linux, file names may look strange to you. Linux file names may include extensions you haven't seen before, may have multiple extensions, or may not have any at all. File names may begin with a "." or may have other symbols in their names, including spaces. Below are some guidelines regarding file names in Linux.

## 3.3.1. File Types

Below are the most common file types in Red Hat Enterprise Linux.

### 3.3.1.1. Compressed and Archived Files

- `.bz2` — a file compressed with `bzip2`

- `.gz` — a file compressed with `gzip`

- `.tar` — a file archived with `tar` (short for tape archive), also known as a tar file

- `.tbz or .tar.bz` — a tarred and bzipped file

- `.tgz or .tar.gz` — a tarred and gzipped file

- `.zip` — a file compressed with ZIP compression, commonly found in MS-DOS applications; most compressed files for Linux use the `gzip` compression, so finding a `.zip` archive for Linux files is rare

For information on working with `bzip2`, `gzip`, and `tar` files, refer to Section 3.4 File Compression and Archiving.

### 3.3.1.2. File Formats

- `.au` — an audio file

- `.gif` — a GIF image file (short for Graphics Interchange Format)

- `.html or .htm` — an HTML file (short for Hyper Text Markup Language)

- `.jpg` — a JPEG image file (short for Joint Photographic Experts Group)

- `.pdf` — an electronic image of a document; PDF stands for Portable Document Format

- `.png` — a PNG image file (short for Portable Network Graphic)

- `.ps` — a PostScript file; formatted for printing

- `.txt` — a plain ASCII text file

- `.wav` — an audio file

- `.xpm` — an image file (short for X Pixelmap)

### 3.3.1.3. System Files

- `.conf` — a configuration file; configuration files sometimes use the `.cfg` extension, as well

- `.lock` — a lock file; determines whether a program or device is in use

- `.rpm` — a Red Hat Package Manager file used to install software

### 3.3.1.4. Programming and Scripting Files

- `.c` — a C program language source code file

- `.cpp` — a C++ program language source code file

- `.h` — a C or C++ program language header file

- `.o` — a program object file

- `.pl` — a Perl script

- `.py` — a Python script

- `.so` — a library file

- `.sh` — a shell script

- `.tcl` — a TCL script

## 3.3.2. Naming Conventions

### 3.3.2.1. Dot Files

Files whose name begins with a ".", called "dot" files, are hidden files. These files can be viewed in both graphical file managers like Nautilus and from the shell prompt, but require an extra step to reveal them. In Nautilus, select View => Show Hidden Files. From a shell prompt, list the files in your home directory by entering the command `ls -al`. If you view the hidden files in your home directory, you may be surprised by the number of files in what you thought was an empty directory. These hidden files are usually configuration files for applications. They are hidden to prevent accidental changes and to remove clutter from the user's home directory.

### 3.3.2.2. Using Spaces in File Names

While Linux allows file names with spaces in them, manipulating these files from a shell prompt can be quite cumbersome. The shell prompt expects a space to separate two files or commands, and may mis-interpret such a filename. To manipulate files with spaces in their names, surround the name with quotation marks.

### 3.3.2.3. Using Symbols in File Names

It is possible to use punctuation marks in your file names. However, be aware that these special characters have special meaning to the shell and may cause errors at a shell prompt. It is generally recommended that you avoid using special characters in file names for this reason. If you choose to use file names with special characters, use quotes around the file names when manipulating them from a shell prompt.

There are a few special characters you cannot use in file names. You cannot use a "/" — this indicates a directory. You cannot name a file "." or "..", for reasons discussed in Section 3.2.1 Paths.

### 3.3.2.4. Files with Multiple Extensions

Filenames can have multiple extensions. There may be a "." in the middle of a file name, or there may actually be multiple extensions. These multiple extensions usually arise when processing a file through multiple programs or commands. The most common file type with multiple extensions is a compressed archive. Compresed files are discussed in detail in Section 3.4 File Compression and Archiving.

## 3.3.3. Finding the Correct File Extension

File extensions are not always used, or used consistently. What happens when a file does not have an extension, or the file does not seem to be what the extension says it is supposed to be? That is when the `file` command can be helpful.

For example, you find a file called `saturday` without an extension. The `file` command enables you to see what type of file it is. Enter `file saturday` at a shell prompt. In this example, the command responds with `ASCII text`. Any file that is designated as a text file should be readable by using the `cat`, `more`, or `less` commands, or by using a text editor such as gedit or `vi`. Refer to Section 4.8 Viewing text files from the shell prompt for more information on `cat`, `more`, and `less`. Refer to Chapter 9 Working with Other Text Applications for more information on gedit and `vi`.

Prev | Home | Next
A Larger Picture of the File System | Up | File Compression and Archiving