Вы находитесь на странице: 1из 7

Linux Lab The File System (2)

Name:
Date:

Linux Lab This lesson will cover the following UNIX commands: man, who, more, pipe, cat, ls, cp, mv, redirect, append, and rm.
Wildcard characters are introduced. man Command
In these labs, you will be learning about different commands. Commands tell UNIX to run a program by that name. The commands were
written by programmers to make using the system easier and faster. More information on the commands can be found in your UNIX text.
You can also obtain information about commands on-line on the computer. System documentation is stored on-line and is accessed by
issuing the command:
man <name> <cr>
where <name> is the name of the command and <cr> represents the enter key on the terminal. Generally, the symbol <cr> will be omitted in
these lab assignments but the appropriate key (enter/return) must be pressed in order for the command to be issued.
who Command
In order to try out the man command, issue the command:
man who
You will get on-line information on what the who command does. The first information you will see is:
Reformatting page. Please wait ---- done.
User commands

who (1)

Name
who - who is on the system
The "Name" gives the definition of the command. Next, you will see more information on what who does and some options that are
available. There will be a --More (5%) message at the bottom of the page. To see more information, press the space bar key. To quit
reading the man pages before the end of the file is reached, type q followed by the enter key. You are back to the prompt line when you see
a $ prompt on the left of your screen.
Read what the who command does. Explain what the who command does?
_____________________________________________________________________________
_____________________________________________________________________________
Next, issue the command: who
The who command will tell you who is on the system at the same time as you are. It lists the person's login names, terminal line, login time,
and terminal name (this is the location of the person at that time). If there are many people on the system at the time that you try this, you
may have several names go by quickly on your screen. In order to see all of the names on one screen at a time, the more command is used.
more and the pipe Command
You can use the more command to display files on your terminal one screen at a time. It can be used with a | (vertical bar) with the who
command so you can scroll one page at a time. In response to the more prompt, press the space bar to continue to the next page. The more
command can also be used to allow you to view a long text file on the screen. An example of this would be if you had a text file called
chapter1, you could type in more chapter1 and it would be listed one screen at a time.
The symbol for a pipe is a vertical bar (|). A pipe connects the standard output of one command directly with the standard input of another
command. It connects commands together. Standard output is defined as the computer screen. In order to see how more works, type in the
following:

man who > sample


cat sample
cat sample | more
You will see one screen of information at a time. When you want to see the next screen, press the space bar. Something different happens if
you press the enter key. Try it. What happens when you press the enter key?
____________________________________________________________________________
Next, issue the command:
who am i
to obtain your login id, your terminal name, and the date and time of the login to the present session.
Your login id is ________________________________________________________________

Your terminal line is: ____________________________________________________________


The date and time of your login to this session is ________________________________________
The name of your terminal location is ________________________________________________
As you learn more commands, you will see that there are different options that are used with commands. There is always a space after the
command and the use of an option. Options start with the - (minus sign) and then some letter. These add more flexibility to commands. Next
is an example of the who command with an option.
Type in:

who -q

The -q lists the login names of the people horizontally who are on the system and also gives you the total number of users. How many users
are on the system now? ___________________________________

cat Command
The cat command has two functions. These two functions are:
1. To display the contents of text files. In the first lab, you worked on a file called practice. In order to see how cat displays the contents of a
file, type in the following:
cat practice
The file practice will be listed. The file is only listed and you cannot make changes in it. In order to make changes, you would have to use
the vi editor. If you wanted to change the file, "practice," you would type in vi practice.
2. To concatenate (link or join) one or more files together and then send the result to the standard output. The standard output is the
terminal screen.
In order to try out some different ways to use the cat command, make three new files. Use the vi editor to create these files. Type in:
vi filea
Be sure to press the i key for insert to start the files.
The filea should contain this line:
THIS IS filea.
After you have typed in this line, press the esc key. Then use the :wq to save the file. Next, use the vi editor to type in:
vi fileb
It should contain this line:
this is fileb.
Save this file using the :wq command and make a third file. Type in:
vi filec
It should contain this line:
THIS is filec.
Save this file. Now you will try different ways to display the contents of these files on the terminal by using the cat command. Display the
contents of each file in turn by issuing the commands:
cat filea
cat fileb
cat filec
Now issue the commands:
cat filea; cat fileb; cat filec
How does the result from this sequence of commands compare with those above?
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
Issue the command:
cat filea fileb filec
What appears on the screen? ____________________________________________________________________________
____________________________________________________________________________

Use of Wildcard Characters


It is possible to abbreviate file name references for existing files by using either of two characters, namely * or ?, as a substitute for
characters in a file name. These characters are referred to as wildcard characters when used as a substitute for characters in a name. Issue the
command:
cat file*
What appears on the screen? ____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
Issue the command:
cat file?
What appears on the screen? ____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
Now issue the command:
cat fil*
What appears on the screen? ____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
Issue the command:
cat fil?
What appears on the screen? ____________________________________________________________________________
Note that one of these wildcard characters matches zero or more characters within a filename. The other matches only a single character
within the name of an existing file. After trying the above commands:
what does the * do? ____________________________________________________________
what does the ? do? ____________________________________________________________
Redirect Symbol
When you use the cat command, the output goes to the terminal screen. The cat command can be used to redirect the standard output to a
file instead of the screen when the redirect symbol ">" is used in conjunction with the target filename. Issue the command:
cat file? > newfile
A new file with the name newfile should have been created. What are the contents of newfile?
____________________________________________________________________________
What command did you use to display newfile?_________________________________________
If the file did not exist before you did the redirect, UNIX will create it. If the file already exists, its contents will be replaced. The original
contents are gone and you cannot get them back!
One way to prevent a file from being overwritten is to use the append (>>) command instead of the redirect (>) command.
Append Command
Occasionally, you may want to add a file to the end of another file. This is called appending a file onto another file. In order to do this, you
use the >> (two greater than signs). This would be used with the cat command. To see how the append command works, type in the
following:
cat practice >> newfile
List out the newfile again. What happened to newfile as a result of the previous cat command?
____________________________________________________________________________
If the file did not already exist, it would be created. If you already have a file by that name, it will be added to the bottom of that file. Using
the append option can be a way to protect files you have made. When a file does not already exist, there is no difference which method you
use, the redirect or append. However, if you are not sure about if a file exists, then using the append is safer.
ls Command

The command ls (This is the lower case L) lists the files in your directory. It lists them across the screen in columns. Two options used
frequently with the ls command are -a and -l; these may be combined as -al . Issue the command:
ls
What was listed to the screen?
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
Next, try out the following:
ls -l
What was listed to the screen? (list all of the information of at least 4 of the lines)
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
The -l option causes ls to generate a long listing. This will list more information about the files in the current directory. The output is similar
to the following:
Total 10
drwxr-xr-x 2 jjs jjs
512 May 6 13:55 Labs
-rw------- 1 jjs jjs 10318 Oct 7 2001 practice
The first line is a count of the total number of blocks (1024 bytes in a block) of storage that the listed files use. Each following line contains
detailed information about a file in the directory. In left to right order, the columns have the following meaning: the first one corresponds to
access permissions; second, the number of links; third, owner's name; fourth, group owner of file; fifth, size of file in bytes; six and seventh,
date and time of last modification; and last is the filename.
The access permissions consist of three groups of three permission categories and an entry which designates whether the file is a directory. If
the access code begins with a "d", then the file is a directory. If there is a "-" in the first position, then it is a file. The format is:
drwxrwxrwx
-rwxrwxrwx

to indicate a directory
to indicate a file

Read, write and execute permissions are indicated by the letters r, w, and x, respectively. Non-permission is indicated by the character "-".
The permission categories from left to right are user, group (project), and world (other). Thus the following access permissions for a file
indicate read and write permission for the owner, read access for the group (project) and read access for everyone:
-rw-r--r-Next type in:
ls -a
What was listed to the screen?
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
Filenames that begin with a "." (period) are called invisible filenames. Some files that are invisible files are .profile, .cshrc,
.kshrc, and "." and "..". You will work with some of these files in some later labs. Invisible files are used to customize your account to fit
your needs more specifically. They work when you type in certain commands. They are not listed with the regular ls command because they
would clutter up the directory. The -a option is used to list all filenames including the invisible filenames. Do you have any files now that are
invisible files? What are the names of the invisible files that are in your working directory?
Type in:
ls -al
What was listed?
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
The "ls -al" lists out all information on files and also lists all of the invisible files.
cp Command
The cp command is a copy command. It will copy one file to another file. It will also copy one or more files to a directory. You will learn
about directories later. There is a source-file which is going to be the file that will be copied to another file, the destination-file. If the

destination-file already exists, it is overwritten and any information in it is destroyed. After one file has been copied to another, the two files
should be exactly the same. An example of the copy command is:
cp source destination
Now, use the vi editor to create a new file called source. It should contain the following line:
This is a test file for cp--the copy command.
Save the file and exit from vi. Now examine the contents of this file by issuing the command:
cat source
Next copy the file named source into a new file named destination. Show the complete command you used to accomplish this:
____________________________________________________________________________
Issue the command:
cat source
Did the file source change after the copy was made? ____________________________________
Next issue:
cat destination
Is the file destination the same as the file source ? _____________________________________
Issue the command:
ls -l
What files were listed? ____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
Earlier, you created a file called newfile. Use the cat command to look at the file again. Now issue the following command:
cp source newfile
Now look at the file newfile. What happened to the contents of newfile?
____________________________________________________________________________
mv Command
Sometimes you want to change the name of a file or move a file from one directory to another. This can be accomplished by the mv
command. It is similar to the cp command. The first argument is the name of the file to be renamed (or moved) and the second argument is
the new name (or new destination). An example is:
mv file1 file2
The file1 name will be changed to file2. As in the case of the cp command, if the second file already exists, it will be overwritten when the
name is changed. Also remember with the mv command, the first file no longer exists. The mv command can also be used to move a file to
another directory. You will learn about directories in a later lab.
Issue the command:
mv source moved
Next issue the command:
ls -l
What happened to the source file? ________________________________________________
The Remove Command
You can delete files that you no longer want by using the command, rm. Delete the following files from your directory by issuing the
command:
rm moved destination
Issue the command:
ls -l
What files are now listed? ____________________________________________________________________________
____________________________________________________________________________

One problem when you use the rm command is that you dont get a second chance to decide if you want to delete a file. When you type in
the rm and the name of the file, that file is gone! When you use a personal computer, you are asked if you really want to delete a file.
You can use the option -i with the rm if you want to be given an opportunity to decide if you want to keep the file. Here is an example:
Assuming the file moved exists, and the user types in the following:
rm -i moved
the system will respond with:
rm: remove moved: (yes/no) ?
If you use the -i option you will get a chance to decide if you want to delete a file. The file is listed and then you can type in either a "y" for
yes or "n" for no. In order to get some practice with this, type in the following:
rm -i newfile
When you are given a choice, type in y.
At the end of this lab, you should still have the following files:
practice
filea
fileb
filec
In order to see if you have these files, type in:
ls -l
Were these files listed?________________________________________

Try ls command using following options


Output in multiple columns (-x)
Identifying directories and executables (-F)
Showing hidden files (-a)
Recursive listing (-R)
Listing file attributes (-l)
in order to modification time (-t)
files access time (-u)

move to homework directory


Try chmod command using following options

Try to assign permissions to files


uxb% echo hell web > small
chmod go-r combine; ls l combine

chmod u-rwx combine; ls l combine


chmod a+r, u+w combine; ls l combine
chmod a=r combine; ls l combine
chmod =r combine; ls l combine

Вам также может понравиться