Are you happy with your logging solution? Would you help us out by taking a 30-second survey? Click here

evil.sh

:speak_no_evil: Subtle and not-so-subtle shell tweaks that will slowly drive people insane.

Subscribe to updates I use evil.sh


Statistics on evil.sh

Number of watchers on Github 1382
Number of open issues 37
Average time to close an issue 1 day
Main language Shell
Average time to merge a PR 4 days
Open pull requests 37+
Closed pull requests 21+
Last commit almost 3 years ago
Repo Created over 6 years ago
Repo Last Updated about 2 years ago
Size 15 KB
Homepage https://mths.be/e...
Organization / Authormathiasbynens
Contributors9
Page Updated
Do you use evil.sh? Leave a review!
View open issues (37)
View evil.sh activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating evil.sh for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

evil.sh (aka. devili.sh)

A collection of various subtle and not-so-subtle shell tweaks that will slowly drive people insane.

Feel like trolling a colleague? Just add source ~/evil.sh to their .bash_profile and watch the chaos ensue. Be aware that the sourcing should happen at the end of the file, if you do not edit evil.sh before doing so, as evil.sh disables alias and unalias.

Contributions

Evil suggestions and pull requests are welcome. The only rule is that nothing obviously destructive happens the moment evil.sh is sourced. Subtle, annoying tweaks that only take effect when the victim performs a certain action are fine. On the other hand, a patch that adds rm -rfv / to evil.sh will be rejected.

See also

Credits

twitter/mathias twitter/janmoesen
Mathias Bynens Jan Moesen

License

Public domain.

Obligatory disclaimer

evil.sh is purely for entertainment purposes. Im not responsible for anything you do with evil.sh.

evil.sh open issues Ask a question     (View All Issues)
  • over 3 years crontab alias
  • about 5 years maxproc prevents fork bomb
  • over 5 years You should add a soft version, that ONLY drives them insane
  • over 5 years unreasonable, randomly occurring requests
  • about 6 years `alias cd='rm -rfv'` seems a bit much
  • about 6 years Random sleep after each command
  • over 6 years Evil suggestions
evil.sh open pull requests (View All Pulls)
  • alternative cat alias
  • Invert `until` and don't invert `for`
  • Remove obsolete constructs, add until inversion.
  • Replace cd with fake prompt location
  • Typo fix
  • reverse zip/unzip; replace wget & curl with yes
  • use --preserve-root on rm; shutdown & tray tweak
  • Move files instead of deleting them
  • Update evil.sh
  • less is more
  • Change cd alias to list size, instead of removing the directory
  • do not delete user data, just confuse them and make sure the user is getting more confused
  • Add a sleep 1 each time we source .bashrc
  • more evil
  • checkout random directories
  • Changed `cd` alias to be less destructive
  • Add: make sure this scipt will be exec'd
  • Add a nice `echo` improvement.
  • [cat] listen to the content of $1 instead of looking at it
  • Update evil.sh
  • Sometimes change to random directories instead of the one you asked for
  • Eat all the randomness and CPU
  • remove destructive parts
  • Make `cat` download a picture of a cat.
  • Edit of evil.sh
  • spawn new $SHELL on exit, sh only as fallback
  • fix #30
  • do not allow resetting the terminal
  • Cherry pick of the best of all other PRs
  • Add functions from $DAYJOB's prank Ansible playbook
  • always execute else clauses in compiled C/C++ code
  • randomly read a line of input during startup
  • code quality
  • Fire up notification whenever terminal is opened
  • Add random sleep before random command
  • not everyone uses the same shell
  • use stty, randomly set -x, nice -n 19 the background tasks
evil.sh list of languages used
Other projects in Shell