CSCI 3294 (Seminar:  UNIX Power Tools), Fall 2018: 
Homework 1
- Credit:
- 30 points.
 
Be sure you have read, or at least skimmed, 
the assigned readings for 8/27 and 8/29.
Answer the following questions.  You may write out your answers by
hand or using a word processor or other program, but please submit
hard copy, either in class or in one of my mailboxes (outside my
office or in the ASO).
Answers to most questions will involve experimentation on
a UNIX or Linux system.  
You are free to use any appropriate system
(unless a specific problem says otherwise);
if you use something other than one of our classroom/lab machines 
please tell me what.
(You will learn more about this topic if you use the man
and info commands rather than Google!)
- (5 points)
	When you are reading a man page, 
	is there a way to search for particular text?  
	What is it?
	(Hint:  Look in the man page for man
	for mentions of a pager, 
	and then read the man page for the appropriate other program.)
 
 
 
- (5 points)
	What command(s) could you use to find out how much disk space
	is available on all the mounted disks?  
	What command(s) could
	you use to find out how much disk space is taken up by all
	the files in your home directory?
	(Hint:  man -k or apropos may be helpful.)
 
 
 
- (5 points)
	The Linux date command will, among other things,
	print today's date or a specified other date.
	How would you use this command to find out
	what day of the week you were born?  (I.e., tell me the line or
	lines you would type in a terminal window to accomplish this.)
	(Hint:  The info page for date may be more helpful
	than the man page.)
 
(To observe how UNIX systems are sometimes not alike,
	if you have access to an OS X (Mac) machine, 
	try the same command on it.)
 
 
 
- (5 points)
	On one of the lab machines, the command 
	ls -l /bin/vi produces the following output:
-rwxr-xr-x. 1 root root 910264 Apr 12 16:08 /bin/vi
 
What does all of this mean?
	(I.e., what does the string of dashes and letters mean?
	The 1?  The 910264?  and so on.)
 
	(Hint:  man ls and info ls may be helpful.)
 
 
 
- (5 points)
	What command(s) would you use to create a directory in your
	home directory called KeepOut to which you have 
	full access (read, write, and execute), 
	but no one else has any access?
 
 
- (5 points)
	Suppose you have started a GUI application called 
	bigpig that for some reason doesn't seem to be
	responding to any input.  
	How do you terminate it without logging out or 
	rebooting the machine?  
	Describe as many ways as you can think of.
	(Hint:  man ps and man kill.)
 
 
 
Include the Honor Code pledge or just the word ``pledged'', 
plus at least one of the following about
collaboration and help (as many as apply).1Text in italics is explanatory or something for you to
fill in.
For programming assignments, this should go in the body of the e-mail
or in a plain-text file honor-code.txt (no word-processor files
please).
- This assignment is entirely my own work.
	(Here, ``entirely my own work'' means that it's
	your own work except for anything you got from the
	assignment itself -- some programming assignments
	include ``starter code'', for example -- or 
	from the course Web site.
	In particular, for programming assignments you can
	copy freely from anything on the ``sample programs page''.)
- I worked with names of other students on this
	assignment.
- I got help with this assignment from 
	source of help -- ACM
	tutoring, another student in the course, the instructor, etc.
	(Here, ``help'' means significant help,
	beyond a little assistance with tools or compiler errors.)
- I got help from outside source -- 
	a book other than the textbook (give title and author),
	a Web site (give its URL), etc..
	(Here too, you only need to mention significant help --
	you don't need to tell me that you
	looked up an error message on the Web, but if you found 
	an algorithm or a code sketch, tell me about that.)
- I provided help to names of students on this
	assignment.
	(And here too, you only need to tell me about
	significant help.)
Include a brief essay (a sentence or two is fine, though you can write
as much as you like) telling me what about the assignment you
found interesting, difficult, or otherwise noteworthy.
For programming assignments, it should go in the body of the e-mail
or in a plain-text file essay.txt (no word-processor files
please).
	
Footnotes
- ... apply).1
- 
Credit where credit is due:  
I based the wording of this list on a posting to a SIGCSE mailing
list.  SIGCSE is the ACM's Special Interest Group on CS Education.
 
Berna Massingill 
2018-08-26