Classwork 2: More Unix Practice
Objectives
More practice using the basic UNIX/Linux commands
Note: at the end of the lab, you will use submit to turn in a transcript of your Linux session. If you do not finish all the steps, just submit as much as you get done.
Assignment 1
- Move to your home directory. Make sure you are there (
pwd). - Create a new directory named
Personal. Verify that the directory exists. - Move to the
Personaldirectory. Verify that you are there. - Use the nano editor to create a file called
things2do.txt.linux1[32]% nano things2do.txt
Once you have opened the file, you should type the following:
1. Finish today's lab exercise. 2. Finish homework 1. 3. Bring my pet tarantula to CMSC104 for Show'n'Tell
Save the file and exit nano (use Ctrl-X).
- Move back to your home directory. Verify that you are
there.
- Start a transcript of your Unix session with
It's very important that you don't skip this step!!!
linux1[33]% script Script started, file is typescript
- List the contents of the
Personaldirectory (ls Personal). It should contain only the filethings2do.txt. - Display the contents of
things2do.txton the monitor (cat Personal/things2do.txtORmore Personal/things2do.txtORless Personal/things2do.txt). To exit out of less, you should type 'q'. - Make sure you are in your home directory! Create another subdirectory
called
PersonalBackupin your home directory. Verify that it exists. Both Personal and PersonalBackup should be in your home directory. -
linux1[34]% pwd /afs/umbc.edu/users/p/a/park/home/ linux1[35]% mkdir PersonalBackup linux1[36]% ls cs104 Mail bin www Personal PersonalBackup linux1[37]%
Copy the file
things2do.txtfromPersonaltoPersonalBackup.linux1[38]% cp Personal/things2do.txt PersonalBackup linux1[39]%
Look at the contents of the
PersonalBackupsubdirectory. It should now contain the filethings2do.txt. - Try to delete the
Personalsubdirectory. You will get a message that the directory is not empty. You must delete all files and subdirectories from a directory before deleting the directory itself. So,- Delete
things2do.txtfromPersonal. - Look at the contents of
Personalto make sure that it is empty. - Delete the
Personalsubdirectory. - Look at the contents of your current (home) directory to make
sure that
Personalhas been deleted.linux1[40]% rmdir Personal/ rmdir: `Personal/': Directory not empty linux1[41]% rm Personal/things2do.txt rm: remove regular file `Personal/things2do.txt'? y linux1[42]% ls Personal/ linux1[43]% rmdir Personal linux1[44]% ls cs104 Mail PersonalBackup bin www linux1[45]%
- Delete
- Move
things2do.txtfrom thePersonalBackupdirectory to your current (home) directory.linux1[46]% mv PersonalBackup/things2do.txt . linux1[47]% ls cs104 Mail PersonalBackup bin things2do.txt www linux1[48]%
- Look at the contents of your home directory to be sure that
things2do.txtis there. - Look at the contents of
PersonalBackupto be sure thatthings2do.txtis no longer there. - Delete the
PersonalBackupsubdirectory. - Delete
things2do.txt.
- Look at the contents of your home directory to be sure that
-
Now you have to stop recording the transcript of your Unix session:
linux1[49]% exit exit Script done, file is typescript
- Check that you have a file named typescript.
- Check that the file is not empty using cat.
linux1[49]% submit cs104_chang cw02 typescript
Assignment 2
Write a C program that prints out "I will not chew gum in class" twenty times.
- Use nano to edit a file called gum.c. Note that the filenames of C programs must end with .c.
- Use the following "Hello World" program as a template
except print out "I will not chew gum in class" instead of
"Hello World"
#include <stdio.h> int main() { printf("Hello World\n") ; return 0 ; } - Use the cut-and-paste feature of nano to cut the line that prints out "I will not chew gum in class" and paste it back in. (Use ctrl-K to cut and ctrl-U to paste.)
- Save the file and exit nano.
- Start a script session:
Note: your previous typescript file will be overwritten. Make sure you submitted the previous version already.
linux1% script
- Use cat to display your program:
linux1% cat gum.c
- Compile your program using gcc:
linux1% gcc -Wall gum.c
- Use ls to make sure that you have a file called a.out.
- Run your program:
linux1% ./a.out
- Quit your script session:
linux1% exit
- Look at your typescript file to make
sure it is correct:
linux1% cat typescript
- Rename your typescript file to typescript2:
linux1% mv typescript typescript2
- Submit your C program and the typescript file:
linux1% submit cs104_chang cw02 gum.c typescript2
Be sure to logout completely when you have finished!
