Here you go:
echo "127.0.0.1 facebook.com" >> /etc/hosts
echo "127.0.0.1 website.you.want.to.block" >> /etc/hosts
Will work very well to block a website. Unblocking the website will need more sophisticated version of this by having conditional statements and patterns to remove the matching entries. I prefer editing the file, it's much faster and neat.
I was thinking of having two /etc/hosts files:
a. one that blocks distracting websites
b. a "normal" one
Also, a cron job (?) that is running twice:
a. in the morning to activate the "blocking" one (renaming?)
b. in the afternoon (after work anyway) to activate the "normal" one
Was thinking about the same but dunno how...
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.