Spring 2011»CSCI 340 Homework 1

CSCI 340 Homework 1

Assigned Date: Monday, Jan. 24, 2011
Due Date: Wednesday, Feb. 2, 2011
Due Time: 11:50am

Last modified on January 28, 2011, at 01:06 PM (see updates)

This is a solo assignment. You must work alone.


This assignment focuses on familiarizing students with Unix, and in particular:

  • learning some common Unix commands;
  • learning some not-so common Unix commands;
  • learning how to use vi; and
  • learning how to learn what a command does (i.e., ways to navigate the Unix knowledge space in search for specific information).


  1. Log on to stono and issue the following commands. Try to interpret the output (if any), and state what the command does.
    • echo hello world
    • passwd
    • date
    • mkdir hmwk1
    • cd hmwk1
    • vi test.txt (you may need to enter ':wq' to exit)
    • ls -la
    • cd ..
    • rmdir hmwk1
    • rm hmwk1/test.txt
    • rmdir hmwk1
    • hostname
    • arch
    • uname -a
    • uptime
    • who am i
    • who
    • last
    • finger
    • top (you may need to press q to quit)
    • echo $SHELL
    • man ls (you may need to press q to quit)
    • man who (you may need to press q to quit)
    • clear
    • cal 2011
    • cal 9 1752 (do you notice anything unusual?)
    • bc -l (type quit or press Ctrl-d to quit)
    • echo 5+4 | bc -l
    • time sleep 5
    • history
    • echo Hello World > hello.txt
    • cat hello.txt
    • less hello.txt (you may need to press q to quit)
    • tr 'A-Z' 'a-z' < paper.txt | tr -cs 'a-z' '\n' | sort | uniq | comm -23 - /usr/share/dict/words (this is a single line)
  2. Create a text file using the vi editor. For each of the above commands, repeat the following:
    • Include the complete command on a separate line (starting at column 0 - no initial spaces).
    • On the next line, write a concise description of what the command did in your own words.
    • Leave an empty line.

At the top of the file include the following:

(NOTE: Angle brackets signify information that needs to be filled out. Remove the angle brackets!)

#   Author:     <Your Name>
#   Email:      <Your email address>
#   Class:      CSCI 340, Section 1
#   Assignment: HMWK1
#   Due Date:   <The assignment's due date>
#   Certification of Authenticity <remove one of the following>:     
#      I certify that this lab is entirely my own work.
#      I certify that this lab is my own work, but I received
#      some assistance from:  <Name(s)>
#   Purpose: <Provide a simple, yet complete description of the task being
#         performed. It may be several sentences long.>


It is OK to search for information online on what these commands do (e.g., the man command, or on the Internet).

However, your description of what these commands do should be in your own words. This last point is paramount. In the credits (see above), specify where you got help from (if other than the man command).


You will submit your assignment via the stono submit command, as follows:

% submit csci340 hmwk1 hmwk1.txt

where hmwk1.txt is the name of your text file, as described above.

No other submission mechanism will be accepted (e.g., email).

For more information on the submit command, see the submit man page.


Your assignment will be graded based on the completeness, and thoroughness of your work. Also on how well you followed the homework instructions.

(This assignment was adapted from William Knottenbelt, Department of Computing, Imperial College, London, UK.)