Quick Find
Linux Commands
Alias Power, Tailoring Linux for You
Permissions (Setting up the modes)
Good Linux Books

Linux Commands

There are of course thousands of Linux related commands and procedures. I will give a few of the more common ones here but I assure you there is A LOT more to Linux than just these relatively simple commands. A few tips with Linux type man command to get an extensive help file. For example type 'man ls' to get the manual page for the ls command containing information on the various switches and uses of the ls command.
You can also execute multiple commands by separating each one with a ; for example cd newdir; mkdir thatdir ; ls -la will first change directories to the newdir directory, then create a directory called thatdir, then list all the files in long format. You can string together as many commands as you like but caution should be used not to inadvertently do anything harmful.
Contents
(Select the command to be taken to the relevant section select BACK TO CONTENTS to get back here)
cd   chmod   cp   df   dir   du   find   head   kill   less   ls   mkdir   more   mv   ps   pwd   rm   rmdir   tail   tree   vdir   vi  

cd
This command is used to change the directory and using this command will change your location to what ever directory you specify
cd hello
will change to the directory named hello located inside the current directory
cd /home/games
will change to the directory called games within the home directory.
As you can see you can specify any directory on the Linux system and change to that directory from any other directory. There are of course a variety of switches associated with the cd command but generally it is used pretty much as it is.
Type man cd for more information on the cd command.
See also ls  dir  vdir
BACK TO CONTENTS

chmod
This command is used to change the mode for files to know more about this command go to the Permissions (Setting up the mode)section. You can get there by using this link chmod

cp
The cp command copies files. You can copy a file in within the current directory or you can copy files to another directory.
cp myfile.html /home/help/mynewname.html
This will copy the file called myfile.html in the current directory to the directory /home/help/ and call it mynewname.html.
Simply put the cp command has the format of
cp file1 file2 With file1 being the name (including the path if needed) of the file being copied and file2 is the name (including the path if needed) of the new file being created.
Remember with the cp command the original file remains in place.
Type man cp to see more about the cp command.
BACK TO CONTENTS

df
The disk free command shows how much memory is being used and how much is free for every partition and mounted file system (including any Windows drive/s).
Type man df for more information about the df command.
BACK TO CONTENTS

dir
The dir command is similar to the ls command only with less available switches (only about 50 compared to about 80 for ls). By using the dir command you will get a listing of the contents in the current directory listed in columns.
Type man dir to see more about the dir command.
See also cd  ls  vdir
BACK TO CONTENTS

du
The disk usage command shows how much memory is being used by each directory below that from which the command was given. If du is run from the root directory it will show the memory used by every directory on the system, including any mounted file systems (including other drives) such as any Windows related drives.
Type man du for more information about the du command.
BACK TO CONTENTS

find
The find command is used to find files and or folders within a Linux system.
To find a file using the find command you type
find /usr/bin -name filename
this will search inside the /usr/bin directory (and any sub directories within the /usr/bin directory) for the file named filename. To search the entire filing system including any mounted drives use
find / -name filename
and the find command will search every file system beginning in the root directory.
The find command can also be used to find command to find files by date and the find command happily understand wild characters such as * and ?
Type man find for more information on the find command.
BACK TO CONTENTS

head
The head command list the first lines of a file. By default it will display the first ten lines of a file.
For example head filename
will list the first ten lines of the file named filename.
You can also select how many lines to show
for example
head -5 filename
will list the first 5 lines of the file named filename.
The format for the head command is
head -n filename With the number of lines to be displayed being n and the file name of the file, including the path if needed, you wish to view being in place of filename.
Type man head for more information on the head command.
BACK TO CONTENTS

kill
The kill command is used to kill a process by using the associated PID (Process ID) number
e.g.
kill 381
This will kill the process with the PID of 381. Be careful using the kill command because it is easy to accidently kill an important process.
To see the current list of processes that are running use the ps command. Typing ps au will display every process that is in operation including background processes and those being conducted by other users.
See also ps  top
BACK TO CONTENTS

less
This command allows you to scroll through a file a page at a time. The less command is very similar to the more command only it is more advanced and has more features associated with it.
less filename
Type man less for more information on the less command.
BACK TO CONTENTS

ls
The ls command lists the contents of a directory. In its simple form typing just ls at the command prompt will give a listing for the directory you are currently in. The ls command can also give listings of other directories without having to go to those directories for example typing ls /dev/bin will display the listing for the directory /dev/bin . The ls command can also be used to list specific files by typing ls filename this will display the file filename (of course you can use any file name here). The ls command can also handle wild characters such as the * and ? . For example ls a* will list all files starting with lower case a ls [aA]* will list files starting with either lower or upper case a (a or A remember linux is case sensitive) or ls a? will list all two character file names beginning with lower case a . There are many switches (over 70) associated with the ls command that perform specific functions. Some of the more common switches are listed here.

Switches can be combined to produce any output you desire.
e.g.
ls -la
This will list all the files in long format showing full file details.

Type man ls for more details about the ls command.
See also cd  dir  vdir
BACK TO CONTENTS

mkdir
The mkdir command is used to create a new directory.
mkdir mydir
This will make a directory (actually a sub directory) within the current directory called mydir.
Type man mkdir to see more about the mkdir command.
BACK TO CONTENTS

more
This command allows you too scroll through a file one screen at a time allowing you to more easily read the files contents. Some files are very big and using this command allows you to view the contents of large files more efficiently. To go forward one screen use the space bar and to go back one screen use the B key
more filename
Type man more for more information about the more command.
BACK TO CONTENTS

mv
The mv command moves files from one location to another. With the mv command the file will be moved an no longer exist in its former location prior to the mv. The mv command can also be used to rename files. You can move files within the current directory or another directory.
cp myfile.html /home/help/mynewname.html
This will move the file called myfile.html in the current directory to the directory /home/help/ and call it mynewname.html.
Simply put the mv command has the format of
mv file1 file2 With file1 being the name (including the path if needed) of the file being moved and file2 is the name (including the path if needed) of the new file being created.
Type man mv to see more about the mv command.
BACK TO CONTENTS

ps
The ps (process status) will by default only show the processes that you as a user have started. However Linux is always running background tasks so you may want to use some of the common switches associated with the ps such as ps au to display the processes running for all users and in the user format hence we get to see every process that is running on the system.
When a process is started it is given among other things a PID number that is unique to it. This PID number can be seen by using the ps command or top command. By knowing a Process ID number you may opt to kill the process if you choose.
See also kill  top
BACK TO CONTENTS

pwd
The pwd command (print working directory) will display the current directory.
e.g.
typing
pwd
will display something similar to this /home/games/help
being the details of the current directory.
To get help with the pwd type /bin/pwd --help and a short help file will be displayed. Type man pwd to get more information about the pwd command.
BACK TO CONTENTS

rm
The rm command is used to delete files. Some very powerful switches can be used with the rm command so be sure to check the man rm file before placing extra switches on the rm command.
rm myfile
This will delete the file called mydir. You can include a path to delete a file in another directory for example rm /home/hello/goodbye.htm will delete the file named goodbye.htm in the directory /home/hello/.
Some of the common switches for the rm command are

Type man rm to see more about the rm command.
BACK TO CONTENTS

rmdir
The rmdir command is used to delete a directory.
rmdir mydir
This will delete the directory (actually a sub directory) called mydir.
Type man rmdir to see more about the rmdir command.
BACK TO CONTENTS

tail
The tail command list the last lines of a file. By default it will display the last ten lines of a file.
For example tail filename
will list the last ten lines of the file named filename.
You can also select how many lines to show
for example
tail -5 filename
will list the last 5 lines of the file named filename.
The format for the tail command is
tail -n filename With the number of lines to be displayed being n and the file name of the file you wish to view, including the path if needed, being in place of filename.
Type man tail for more information on the tail command.
BACK TO CONTENTS

tree
This will give a graphical display of the structure of a particular directory and all sub directories, files and links within that directory.
e.g.
tree /var/lib
will show something similar to this

/var/lib
|--games
|--rpm
|   |--conflictsindex.rpm
|   |--fileindex.rpm
|   |--groupsindex.rpm
|   |--packages.rpm
|   `--require.rpm
`--text
 
6 directories, 6 files

Type man tree for more information on the tree command.
BACK TO CONTENTS

vdir
The vdir command is similar to the ls -l command. When used the command acts very much like ls -l does by displaying the directory contents showing the file attributes and permissions. The amount of switches for vdir are a lot less than for the ls command (vdir has just over half the amount of available switches as the ls command) but vdir is still used and accepted.

Type man vdir to see more about the vdir command.
See also cd  dir  ls
BACK TO CONTENTS

vi
The vi command is actually a text editor that comes as standard with most Linux packages.
Type man vi for more information on vi.
More information on vi is in the Using the vi Editor section. Use this link vi to get there .
BACK TO CONTENTS

Quick Find


Alias Power Tailoring Linux For You

The power to create alias commands in Linux is next to divine because it means you can completely adapt linux to your needs and preferences. An alias is simply a word that causes a command or series of commands to be performed. Linux allows you almost complete freedom to create any alias you please. To set an alias you simply type something similar too this
alias ab='ls -a'
This will set up an alias for the letters ab being the ls -a command. This means when you type ab at the command prompt you will execute the ls -a command so typing ab will list all the files in the current directory.
To create another alias simply type whatever letters or even a word that you want to use for the alias in place of the ab and put what ever command and switches etc. in place of the ls -a. Remember that you can execute multiple commands by separating each one with a ; for example cd hello; mkdir try ; ls -la will first change directories to the hello directory, then create a directory called try, then list all the files in long format. You can string together as many commands as you like but caution should be used not to inadvertently do anything harmful.
It may be a good idea to create an alias for deleting files that includes the -i switch and hence will prompt before deleting files. This can be achieved by doing something similar to the following
alias del='rm -i' This will create an alias named del that will execute rm -i when used. This is how some of the new Linux productions build in safe guards such as Red Hat's rm command is actually an alias for rm -i hence it will prompt before it deletes anything (unless the -f switch is used of course).
Another useful alias is one which will produce a colour listing. When executed links, directories and files all will be displayed in different colours (if you have a colour monitor of course it will serve no purpose on a black and white or monochrome monitor).
alias list='ls --color'
or
alias list='ls -al --color' (for long listing all files in color format)
If you have a black and white or monochrome monitor then try this alias
alias list='ls -F'
or for long listing all files
alias list='ls -alF'
This will produce a listing showing a character for each type of file type / means a directory, * means an executable file and @ for symbolic links.
As you can see the use off alias' is only limited by your imagination. Try a few out for yourself and see how useful a good alias can be. I use several myself and find them to be very handy.
Quick Find
Permissions (Setting up the modes)

Linux allows for very good security by allowing the owner of a file to choose who has access to that file and what kind of access they have. The owner of a file is usually the person who created the file or who has been set as the owner and can choose the access level of people belonging to a particular group and others outside that group. A group is simply a collection of users belonging to the same group users within a group all share the same access rights as all others in that group. Rather than giving each and every user independent access rights it is often easier to simply associate them with a group.
chmod
When you perform a listing using the -l flag you will see all kinds of letters and - signs before the individual files and directories.
e.g.
-rwxr--r--     1 root     root       1024 Jan 27  09:45 happy
lrwxrwxrwx   1 root     root       1024 Feb 13 09:45 myfile3
drwxr-xr--     1 root     root       1024 Feb 18 09:45 logs
What does it all mean?
Well the first 10 letters that look similar to this lrwxrwxrwx contain the permissions that can be controlled with the chmod command (the first letter you can't change as you will see for obvious reasons). The first letter (lrwxrwxrwx) is simply the type of file it is either a l for a link to another file, d for a directory or - for a file and is set by the linux operating system you can not manually change this letter (unless you change the file type of course). Next come the permissions for the owner (-rwxrwxrwx) followed by the permissions for the group (-rwxrwxrwx) and permissions for others (-rwxrwxrwx). The three letters stand for read, write and executable. If the letter is present then that particular permission is on and if there is a - in its place it is off. This means the owner of a file can alter and change the permissions to what ever they like for example -rwxr--r-- means that the file is readable, writable and executable for the owner but only readable for everyone else. Another example would be -rwxr-x--x this would mean that the file is readable, writable and executable by the owner but only readable and executable for everyone in the group and only executable to others outside the group. As you can imagine this ability to give or remove permissions can be very handy and adds to the security of linux. To change permissions on a file you need to be the owner and you can do it in two ways
The format for the chmod command is
chmod xyz file
with x representing the permissions for the owner followed by y the permissions for the group then z the permissions for all others. The file is the name of the relevant file being modified.
You can use a variety of methods to set the permissions for your files. The first is by using octal encoding where by numbers represent the rwx
letters
Read=4
Write=2
Execute=1
So if you wanted to set up the permission for the file myfile2 to be rwxrw-r-- you will need to add up the numbers for the owner being rwx (4+2+1=7), the group being rw (4+2=6) and others r (2) so the chmod command will be
chmod 762 myfile2
Though this may seem confusing at first you will learn it quite easily with practice and it will prove to be virtually fool proof over time.
You can also add permissions
e.g.
chmod +x file
This will make the file executable to all users.
You can also use the following
chmod go-rwx
This will remove all permissions from the group and other users making the file only readable, writable or executable by the owner and no one else.
chmod o+x file
This will add the executable permission to other users only.
You can also apply permissions to directory meaning you can restrict who can list the directory contents. You can allow them to view files in the directory but not list the directory contents. This and other permissions enable the owner of a file or directory to have complete control over its use enabling more security and privacy.
Quick Find


Quick Find
Linux Home
You are visitor number