blob: e361e04ade2148e91cdd6f6a917dc0358fdb1d21 [file] [log] [blame]
Robert R Evansa4d02422010-10-02 15:07:29 -07001#!/bin/bash
2
Robert R Evans2010f012010-10-10 09:24:19 -07003# For generic functions.
4
5function ips {
6 ifconfig | grep "inet " | awk '{ print $2 }'
7}
8
Mark Szymanski63c60e52011-03-11 20:32:46 -06009function down4me() {
10 curl -s "http://www.downforeveryoneorjustme.com/$1" | sed '/just you/!d;s/<[^>]*>//g'
11}
12
Robert R Evans2010f012010-10-10 09:24:19 -070013function myip {
14 res=$(curl -s checkip.dyndns.org | grep -Eo '[0-9\.]+')
15 echo "Your public IP is: ${bold_green} $res ${normal}"
16}
Robert R Evansc9da0862010-10-06 17:27:55 -070017
Mark Szymanski4898fa92011-05-27 11:47:55 -050018# Function for previewing markdown files in the browser
19
20function pmdown() {
21 if command -v markdown &>/dev/null
22 then
23 markdown $1 | browser
24 else
25 echo "You don't have a markdown command installed!"
26 fi
27}
28
Jesus de Mula Canocced7272011-03-07 00:18:05 +010029# Make a directory and immediately 'cd' into it
30
Mark Szymanski63c60e52011-03-11 20:32:46 -060031function mkcd() {
32 mkdir -p "$*"
33 cd "$*"
Mark Szymanski123c3be2010-10-18 18:24:15 -050034}
Robert R Evansc9da0862010-10-06 17:27:55 -070035
Jesus de Mula Canocced7272011-03-07 00:18:05 +010036# Search through directory contents with grep
37
38function lsgrep(){
39 ls | grep "$*"
40}
41
Robert R Evans2010f012010-10-10 09:24:19 -070042# View man documentation in Preview
43pman () {
44 man -t "${1}" | open -f -a $PREVIEW
45}
46
47
48pcurl() {
49 curl "${1}" | open -f -a $PREVIEW
50}
51
52pri() {
53 ri -T "${1}" | open -f -a $PREVIEW
54}
55
Mark Szymanski62295972010-11-20 16:27:47 -060056quiet() {
57 $* &> /dev/null &
58}
59
Mark Szymanski5a7174a2010-11-04 13:09:40 -050060banish-cookies() {
61 rm -r ~/.macromedia ~/.adobe
62 ln -s /dev/null ~/.adobe
63 ln -s /dev/null ~/.macromedia
64}
Robert R Evans2010f012010-10-10 09:24:19 -070065
66# disk usage per directory
Florian Baumanne45e72e2010-11-02 14:50:45 +010067# in Mac OS X and Linux
Robert R Evans2010f012010-10-10 09:24:19 -070068usage ()
69{
Florian Baumanne45e72e2010-11-02 14:50:45 +010070 if [ $(uname) = "Darwin" ]; then
71 if [ -n $1 ]; then
72 du -hd $1
73 else
74 du -hd 1
75 fi
76
77 elif [ $(uname) = "Linux" ]; then
78 if [ -n $1 ]; then
79 du -h --max-depth=1 $1
80 else
81 du -h --max-depth=1
82 fi
83 fi
Mark Szymanski123c3be2010-10-18 18:24:15 -050084}
Mark Szymanski4b26a782010-11-05 15:02:12 -050085
86# One thing todo
Mark Szymanski64eb3382010-11-05 15:27:03 -050087function t() {
Mark Szymanski4b26a782010-11-05 15:02:12 -050088 if [[ "$*" == "" ]] ; then
89 cat ~/.t
90 else
91 echo "$*" > ~/.t
92 fi
Florian Baumanncecbae52010-11-08 21:31:11 +010093}
94
Jesus de Mula Cano229aa832011-03-07 00:02:43 +010095# Checks for existence of a command
96command_exists () {
97 type "$1" &> /dev/null ;
98}
99
Florian Baumanncecbae52010-11-08 21:31:11 +0100100# List all plugins and functions defined by bash-it
101function plugins-help() {
102
103 echo "bash-it Plugins Help-Message"
104 echo
105
106 set | grep "()" \
107 | sed -e "/^_/d" | grep -v "BASH_ARGC=()" \
108 | sed -e "/^\s/d" | grep -v "BASH_LINENO=()" \
109 | grep -v "BASH_ARGV=()" \
110 | grep -v "BASH_SOURCE=()" \
111 | grep -v "DIRSTACK=()" \
112 | grep -v "GROUPS=()" \
113 | grep -v "BASH_CMDS=()" \
114 | grep -v "BASH_ALIASES=()" \
Florian Baumann6a890d22010-11-08 21:40:16 +0100115 | grep -v "COMPREPLY=()" | sed -e "s/()//"
Florian Baumanncecbae52010-11-08 21:31:11 +0100116}
117
Florian Baumannab445722010-12-14 14:33:16 +0100118# back up file with timestamp
119# useful for administrators and configs
120buf () {
121 filename=$1
122 filetime=$(date +%Y%m%d_%H%M%S)
123 cp ${filename} ${filename}_${filetime}
124}