CMSI 186: Homework Assignment #1

Learning Outcomes: Students will (1) understand file system organization; (2) understand and use both absolute and relative names for files and folders; (3) be experienced in using the command line to create, move, rename, copy, and delete files and folders; and (4) create and use script files from the command line to accomplish computing tasks.

Getting Familiar with the Command Line

Background

Since Dr. Toal likes to play music when you come into class, you would like to make some requests for music that he can play. He does take requests, but only from a certain select set of music categories.

Fortunately you're not starting from scratch and some of your LMU student friends have provided you with a list of albums and artists. Unfortunately, some of the files have gotten mixed up…

Not to worry! With the command line, you'll have them straightened out in no time! :)

Your Task

For this homework, accomplish the following activities:

  1. Use git, either from the command line or from github desktop, and download the zip file named music-mashup.zip, Put the file into your homework01 directory [folder] on your local computer's hard drive.
  2. Unzip the file on your local drive.
  3. Then rearrange all the files and folders to make sure every song artist is in the correct genre folder [note: there might be multiple genres that fit, so feel free to make copies of some artists and put them into multiple genre folders] and that each artist folder has the right artist inside it. Be careful or you might end up listening to Dolly Parton instead of Nicki Minaj!
  4. You can start by using the GUI (i.e., you can move documents around by clicking and dragging from one folder to another in either Windows or mac O/S), but once you're comfortable doing that, you should face this challenge straight from the command line using a terminal window.
  5. Once everything is in the right place, CONGRATULATIONS! You've officially learned how to speak computerese. Ready to take it a step further? Let's talk extensions…

Extensions

  1. If you are unsure what items go with what artists or categories, feel free to use your favorite search engine to look them up!
  2. Once you're sure everything is in the right place, brainstorm other genres, artists, and albums that you want to listen to, and add them into your file tree!
  3. Mix up all of your files again, then make your way into a song/album/artist of your choice. Reorganize the files again, while staying in that same album or artist directory.

What to Turn In

  1. Write down all the commands you used to organize the file. Don't worry about efficiency for now ~ you should feel free to explore! Include commands such as ls or pwd or dir or ren that helped you to figure out where everything was located.
  2. You can also type the commands into a batch file [on Windows] or a shell script file [on Mac/Linux/UNIX] so that you can run them again later. We'll talk about that in class.
  3. If you did any extensions, write down the commands you used for those as well.
  4. Commit your reordered project files to your GitHub repo under your homework01 folder/directory.

Notes:

  1. No Notes as of this writing…

Submission Guidelines: Make a sub-directory in your repository as mentioned above, called homework01 and commit your homework01 folder and all its contents into it. DON'T FORGET TO ADD A COMMIT COMMENT!