Note that these problems will show just one possible solution or explanation. There are almost always many valid ways of solving the same problem!
Click the boxes below to see the solutions!
These questions are included to facilitate question during our scheduled class time on Tuesdays. They are not graded and you don’t need to submit your answers anywhere - they’re just here to help you get practice with the material.
- We won’t have time to cover all the commands we want to in this class. Lots of useful commands will be included in the lecture slides. You’ll need this for your homework - try finding the commands that do the following:
- Move a file from one location to another
- Delete a file
- Copy a file
mv src dest
cp src dest
- Do you know the difference between the terminal and the shell? If not, do you have any educated guesses?
A terminal is your way of interacting with your computer in a text-based environment. For example, Macs come with the “Terminal” program or you can install “iTerm” that has more customizations. A shell is a program someone wrote run in a terminal that interprets the commands you type and presents output. There are different types of shells written by different people (e.g.,
- What is the command to list all files in the current directory, and recursively list the files in all subdirectories?
We found this by using
man ls to see the
ls documentation. Then by typing
/ we were able to start searching the page for the term “recursive”.
- What is the flag we would pass to
lsto sort files by size? (try searching the
manpage instead of just scrolling!)
ssh, can you print out the contents of your home directory on
attuwithout logging into
attu? (You’ll still need your password, but you can do this without opening a login shell on
ssh <username>@attu.cs.washington.edu ls
The important part of this problem is not the
ssh command itself, but to look at the format of
man ssh to see it’s something like
ssh destination [command]. Things in square brackets are optional while things without square brackets are required. The way of reading this is to say that
ssh requires a parameter
destination and optionally, you can pass a
command to run on the
findis a command that we will learn about more in this class that allows you to search through your file system. Suppose that we are in the
lecture1directory from the videos (i.e. we have a
dir2subdirectory). Without actually running the command, do you think we could run
find dir1 dir2(i.e. give it two directories are arguments)? Why or why not?
Yes! If you look at
man find, you see the synopsis say
SYNOPSIS find [-H] [-L] [-P] [-D debugopts] [-Olevel] [starting-point...] [expression]
The pertinent part is
[starting-point...]. The square brackets mean this argument is optional and the
... means it can accept one or more of them.