Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 38 additions & 2 deletions 02_activities/assignments/assignment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@ cd newproject

mkdir analysis output
touch README.md
echo "# Project Name: DSI Consulting Inc." > README.md
touch analysis/main.py

# download client data
curl -Lo rawdata.zip https://github.com/UofT-DSI/shell/raw/refs/heads/main/02_activities/assignments/rawdata.zip
unzip -q rawdata.zip

###########################################
# Complete assignment here

Expand All @@ -40,10 +40,46 @@ unzip -q rawdata.zip
# 6. Repeat the above step for user logs and event logs

# 7. For user privacy, remove all files containing IP addresses (files with "ipaddr" in the filename) from ./data/raw and ./data/processed/user_logs
rf -rf ./data

# 8. Create a file named ./data/inventory.txt that lists all the files in the subfolders of ./data/processed


###########################################

echo "Project setup is complete!"
echo 'Project setup is complete!'

# 1. Create a directory named data
mkdir ./data

# 2. Move the ./rawdata directory to ./data/raw
mv ./rawdata ./data/raw

# 2b. Move loose logs (extracted in project root) into data/raw
mv ./server_log_*.log ./data/raw/
mv ./user_log_*.log ./data/raw/
mv ./event_log_*.log ./data/raw/

# 3. List the contents of the ./data/raw directory
ls ./data/raw

# 4. Create processed subdirectories
mkdir ./data/processed
mkdir ./data/processed/server_logs
mkdir ./data/processed/user_logs
mkdir ./data/processed/event_logs

# 5. Copy server logs into server_logs
cp ./data/raw/*server*.log ./data/processed/server_logs/

# 6. Copy user and event logs
cp ./data/raw/*user_log_*.log ./data/processed/user_logs/
cp ./data/raw/*event_log_*.log ./data/processed/event_logs/

# 7. Remove files containing "ipaddr" from raw and user_logs
rm ./data/raw/*ipaddr*
rm ./data/processed/user_logs/*ipaddr*

# 8. Create ./data/inventory.txt listing all files in subfolders of ./data/processed
ls ./data/processed/*/* > ./data/inventory.txt