For this assignment, you will be making a basic shell script to make some changes to a file system. A shell script is a useful tool for running multiple terminal commands sequentially. For this assignment, all your answers will be placed in the answers.sh
file.
Homework 2 is due on 12 February 2020 at 11:59PM EST.
-
You will be finished with the assignment when you have a functional SINGLE COMMAND for each of the 12 tasks in your
answers.sh
file. -
In order to test your commands, run
bash -i grader.sh
in terminal. This program will let you know which command is not functionally properly.- Please note that the grade you receive with the
bash -i grader.sh
is not your guaranteed grade on homework 2. Your TA will still go through your commands to ensure that you only use a single command for each of the tasks.
- Please note that the grade you receive with the
-
Open a terminal window
-
Windows: Open up PowerShell
-
Mac & Linux: Open Terminal
-
If you are having issues, it might just be easier to use a lab machine in Lawson or Haas
-
-
Click the green "Clone or download" button on this GitHub repository and copy the URL.
-
Open up your respective terminal application and run
ssh [email protected]
. Replace "purdue_username" with you Purdue username. It will prompt you to enter your Purdue password. -
Run
git clone URL
, replacing URL with what you copied in step 2. (It will ask for GitHub credentials) -
You are ready to go! Start typing your answers in
answers.sh
. To editanswers.sh
type in eithervim answers.sh
ornano answers.sh
. Use the editor that you prefer.
ALL COMMANDS SHOULD BE FROM THE ORIGIN
DIRECTORY!!!!!
For instance mv Hello.java Hello2.java
would not be an acceptable answer for renaming Hello.java to Hello2.java, since there does not exist Hello.java in the ORIGIN
directory. Instead, the proper answer would be mv Programs/Hello.java Programs/Hello2.java
.
EVERY ANSWER SHOULD ONLY BE A SINGLE COMMAND!!!!!
Rename Homework/MA165/HW2.txt
to HW1.txt
.
Delete Memes/Spongebob/money.jpeg
(it wasn't funny enough to make it into the memes folder).
Move fafsa.jpg
from the Star Wars meme folder to Memes/SpongeBob
(SpongeBob memes don't belong in the Star Wars folder).
Delete the Homework/CS191
directory.
Make a new directory in Programs
called C++
.
Move Programs/Age.cpp
to the newly created C++
directory made in Task 5.
Copy the Programs/Java
directory into the Homework/CS180
folder, while renaming the Java
directory Project_1
.
Move Programs/Count.c
and Programs/Goodbye.c
to the Programs/C
directory.
Move Programs/Name.py
and Programs/Space.py
to the Python 3 folder in the Programs directory.
Make a new file in Homework/POL141
called Essay.txt
.
List the files and directories above the current working directory.
Create an alias wttr
for the command curl wttr.in
. You will need to create the alias in your .bashrc
in order to pass the test case with bash -i grader.sh
. To get the homework points, please put the command you used to create the alias under # Task 12
in answers.sh.
-
Make sure all your commands are saved in
answers.sh
! -
Run
./turn-in.sh
(it will ask for your GitHub username and password) -
Verify that your answers have been submitted by opening your GitHub repository online and checking the
answers.sh
file. -
You are done! Yay!!!
Task | Points |
---|---|
Task 1 | 1 |
Task 2 | 1 |
Task 3 | 1 |
Task 4 | 1 |
Task 5 | 2 |
Task 6 | 2 |
Task 7 | 2 |
Task 8 | 2 |
Task 9 | 2 |
Task 10 | 2 |
Task 11 | 2 |
Task 12 | 2 |
Total | 20 |
Simply run ./clean.sh
. This will reset your ORIGIN
directory without deleting your answers in answers.sh
. It is like nothing ever happened!
Take a look at the Terminal_Guide.md file in the repository. This document reviews the content found in lecture. Everything you need to complete this assignment can be found there.
Try different things out by typing out commands in terminal. It is okay to mess up. Simply run ./clean.sh
to revert any changes. The best way to learn is to experiment!
If you need extra help, ask a TA, ask on Piazza, or Google around. DO NOT COPY DIRECTLY FROM ANOTHER STUDENT