Most frequent Linux tools  – Quick start guide

This quick one minute video demonstrates how to use some of the most frequently used tools in Linux or Mac. The processes are elaborated below as this video does not contain any audio. This quick video is from my Mac. Leave comments or questions at the bottom.

Tools demoed:
The above video demonstrates the following:
  • How to create a directory called tutorial in Linux – the mkdir command
    mkdir tutorial
  • Navigate into the directory
    cd tutorial/
  • How to get a list of contents in directory
  • How to create file named file.txt using vi or vim and save it
    vi file.txt

    to open editor, then press ‘i’ to start inserting text and ESC to come out of writing mode; and to save and quit, use ‘:wq’ and ENTER!

  • How to quickly view the file without it hogging the screen permanently using less –
    less file.txt

    and then ‘q’ to exit viewing

  • How to view the file in a manner that it stays on the terminal screen using cat
    cat file.txt
  • How to find the string ‘make’ in the file or every occurrence of this string using grep
    grep make file.txt
  • How to use awk to print only certain strings from a line in the file – basically, we want to print certain strings from a line, so its clever to choose a string that is only in that line and grep it first so that we have the line alone; then pipe (|) it to awk to filter the strings using – In this case, awk prints the 4th, 8th, 9th and 10th string from the grep result as output.
    grep ‘abracadabra’ file.txt | awk ‘{print $4,$8,$9,$10}’
 Screen Shot 2016-06-12 at 13.19.14.png
In addition to these tools, there are various other tools used (e.g. sed, tail etc) that come in handy with these tools. Please leave any comments or questions. Thanks for visiting.

How to stream videos from your Mac or Linux on Smart TVs

Okay, since getting a 50″ Samsung Smart TV, I wanted to be able to stream existing videos from my Mac on the TV. Where do I start? Search for apps? Not helpful. Chromecast is the easiest and cheapest solution but its £35 and as a bit of an IT nerd, I would not go for that option. So, instead I came up with serving files via apache and php to stream. This is not the most convenient way as we will need to be editing file names every time we need a new movie added (which isn’t too bad) but I think would help many like me.

I assume the readers here are somewhat capable of editing configs, Apache and virtual hosts, terminal etc. Pop in any questions below if something is missing or still doesn’t work after these steps.



A Mac/ Linux system with Apache/ PHP (This is already built in on Macs)

Check if Apache works

sudo apachectl start

and in your browser, paste the below. This should display the page below.


If you don’t see this, that means we’ll need to fix Apache with some help from the section further down. But if it works, follow these next steps to continue.


1.Make a directory for our new files via terminal

sudo mkdir ~/Sites

2.Create a new user config (You can use the Mac user account short name)

sudo vi /etc/apache2/users/username.conf

3.Paste the following lines into the file and save + quit

<Directory "/Users/*/Sites/">
Options Indexes MultiViews FollowSymLinks AllowOverride All
Require all granted

4.Now enable this user directory to serve files

Note: Take a backup of the httpd.conf file before editing.

cp /etc/apache2/httpd.conf /etc/apache2/httpd.conf.bak
sudo vi /etc/apache2/httpd.conf

5.Uncomment the lines below if they aren’t (Find the block by searching for “userdir”)

LoadModule userdir_module libexec/apache2/
LoadModule alias_module libexec/apache2/
LoadModule rewrite_module libexec/apache2/
LoadModule php5_module libexec/apache2/

Screen Shot 2016-03-20 at 08.49.03

6.Final change to be made

sudo vi /etc/apache2/extra/httpd-userdir.conf

Uncomment the following line in this file, save and quit.

Include /private/etc/apache2/users/*.conf

7.Restart Apache

sudo apachectl restart

Embed HTML5 Video

Now that our servers are working fine and the new directory from step 1 is being served, we need to put some html files in here to access the video we will be embedding. Smart TV’s do not usually support streaming video on their inbuilt ‘browsers’ but can ‘play’ html5 content.


Video file you will be serving:


Video and HTML File location:


HTML file name:



1.Create html file in the ~/Sites directory and paste this code in and save.



<p3 style ="color:Black;font-family:papyrus"><center><b>Daredevil HD</b></center></p3>


<video width="640" controls> <source src="/Users/username/Sites/Daredevil.mp4" type="video/mp4"> </video> </center>

</body> </html>

2.Check on browser (This is what you should see on the Smart TV)

Type in the following address and you should see a page as below


Screen Shot 2016-03-20 at 09.31.57

Fixing Apache

Unless you’ve broken the configs. If you have, follow steps here to fix your Apache configs and start over from Step1 above. This site also provides a default copy of the httpd.conf file which can be used to start clean.

Note: Create backups of all files that you will be editing/ replacing.