A couple of things, don't be afraid or feel ashamed to google this. Googling is exteremly encouraged. But I recommend not copy and pasting answers but if you do be sure that you COMPLETELY understand and can remember what you copy and paste.
Any script you write should be committed to Github using git. If you need a git tutorial I recommend: https://try.github.io/levels/1/challenges/1 for the random bash scripts I would recommend starting a "scripts" or "utilities" repo. Every Ops person has a repo full of their own bash or python scripts.
What are the major Operating Systems? (I'm expecting 4 but depending on the detail there could be more)
Write a short blurb (3 - 5 sentences) about each OS with some info about their origins and any interesting facts you find.
-
Operating System
-
Kernel
-
Software
-
Hardware
-
RAM (Random Access Memory)
-
HDD (Hard Drive Device) What is the difference between a HDD and an SSD?
-
CPU (Central Processing Unit)
-
GPU (Graphics Processing Unit)
-
Network Card
- A good software for this is Virtualbox: https://www.virtualbox.org/wiki/Downloads but there are many others
-
TCP
-
UDP
-
HTTP
-
FTP
-
What is a shell?
-
What are the default shells on Mac, BSD, and Linux-based systems?
-
What's the difference between BASH and SH?
-
Understand how to do file management in the shell. Define these commands and their purpose:
-
pwd
-
cd
-
mv
-
ls
-
cp
-
rm
-
find
-
chown
-
chmod
-
-
Write a bash script which prints the current user and current working directory without using a GUI at all except for your web browser to look up documentation.
-
Expected output: You are logged in as and you are at
-
Bonus Points: Can you find the relevant documentation in the command line?
-
-
Make the bash script executable (i.e. instead of /bin/bash myscript.sh you should be able to run it with ./myscript.sh)
-
Write a bash script to delete all files in the current directory with a last modified date that's older than 3 hours
-
You can generate a directory with files to test with using this script:
#!/bin/bash for i in {4..10} do echo "DELETE ME" > DELETE_ME.$i.log touch -d "$i hours ago" DELETE_ME.$i.log done for i in {1..3} do echo "KEEP ME" > KEEP_ME.$i.log done
-
-
Use a command line tool to find all lines in loremipsum.txt that contain the word lorem
-
Use that same command line tool to only print the word lorem
-
What is a Unix Pipe?
-
Use a Unix Pipe to search all processes for each instance of the bash shell
-
What is SSH?
-
How can you read documentation for command line tools from the command line?
-
Create a bash alias to shorten some command you've used a lot
- If you need inspiration here is my bash aliases: https://github.com/chasinglogic/dotfiles/blob/master/bash/aliases.bash
-
Customize your bash prompt in any way.
- What shells are available on Windows?
Commit all of these to Github
Write a Python Program that will count the number of times the word lorem appears the attached loremipsum.txt attachment
"Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”."
Create a chat bot using https://github.com/chasinglogic/chattie
- Think of a fun or goofy command and write it into your bot.
Write a new connector for the Chattie library using any API you find interesting. (Facebook Messenger might be a good test)
Spin up your own server at https://digitalocean.com
-
Use this link to get $10 in credit: https://www.digitalocean.com/?utm_source=LinuxUnplugged&utm_medium=Podcast&utm_campaign=Linux+Unplugged+Podcast
-
The credit code is: dounplugged
-
Use your ssh key for the server
<h1>Mathew Robinson is the greatest man alive!</h1>
- If so why? If not why not?