-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbash-help
160 lines (145 loc) · 4.39 KB
/
bash-help
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
export HOST=`hostname`
export HOSTNAME="`hostname | sed -e 's,\..*,,'`"
export PAGER="less"
export MANPAGER="less"
export TERM="xterm-color"
export EDITOR=vim
export LESS=FRXe
export PATH="$HOME/my-toolbox:/usr/local/bin:$PATH"
export DOCKER_BUILDKIT=1
unset autologout # don't log me out. please.
# dev aliases
if [[ "$OSTYPE" == "darwin"* ]]; then
export DIFF=colordiff
else
export DIFF=diff
fi
alias akacurl='curl -v -s -o/dev/null -H "Pragma: akamai-x-get-cache-key" -H "Pragma: akamai-x-cache-on" -H "Pragma: akamai-x-cache-remote-on" -H "Pragma: akamai-x-get-true-cache-key" '
alias be='bundle exec'
alias bspec='be rspec --format documentation'
alias decrypt=' gpg -u $GPG_EMAIL -d -o - '
alias encrypt=' gpg -e -r $GPG_EMAIL '
alias gc='git commit -a'
alias pick='git cherry-pick'
alias pdiff="$DIFF -ruw -x .svn "
alias sourceenv='export $(cat .env | grep -v ^# | xargs)'
alias splitspace="perl -n -e 's/\ /\n/g; print'"
alias joinspace="perl -n -e 's/\n/ /; next if /#/; print'"
alias nospace="perl -pi -e 's/^\ +$|\ +$//g'"
alias venv='. venv/bin/activate'
alias vi='vim'
alias isodate='date "+%Y-%m-%dT%H:%M:%SZ"'
alias pw='rand 24 1'
# functions sourced from .bashrc
function cdd() {
#echo "args: $#"
dir=''
if [ $# = 0 ]; then
dir=$HOME
else
dir="$*"
fi
builtin cd $dir;
ls -FC;
echo '';
}
# Set shell prompt
# based on
# $Id: .bashrc,v 1.5 2004/09/15 16:24:58 psy Exp $
#
# Source: http://www.nothingisreal.com/
#
function prompt {
local BLACK="\[\033[0;30m\]"
local BLUE="\[\033[0;34m\]"
local GREEN="\[\033[0;32m\]"
local CYAN="\[\033[0;36m\]"
local RED="\[\033[0;31m\]"
local PURPLE="\[\033[0;35m\]"
local BROWN="\[\033[0;33m\]"
local LIGHT_GRAY="\[\033[0;37m\]"
local DARK_GRAY="\[\033[1;30m\]"
local LIGHT_BLUE="\[\033[1;34m\]"
local LIGHT_GREEN="\[\033[1;32m\]"
local LIGHT_CYAN="\[\033[1;36m\]"
local LIGHT_RED="\[\033[1;31m\]"
local LIGHT_PURPLE="\[\033[1;35m\]"
local YELLOW="\[\033[1;33m\]"
local WHITE="\[\033[1;37m\]"
local NO_COLOUR="\[\033[0m\]"
case $TERM in
xterm*)
TITLEBAR='\[\033]0;\u@\h:\w\007\]'
;;
*)
TITLEBAR=""
;;
esac
case $1 in
white) PS1="$WHITE\u@\h:$BLACK ";;
blue)
PS1="${TITLEBAR}$BLUE[$BLUE\u$BLUE@$BLUE\h$BLUE:$BLACK\w$BLUE]$BLUE\$$BLACK "
;;
red)
PS1="${TITLEBAR}$RED[$RED\u$RED@$RED\h$RED:$RED\w$RED]$BLACK\$$BLACK "
;;
green)
PS1="${TITLEBAR}$GREEN[$GREEN\u$GREEN@$GREEN\h$GREEN:$CYAN\w$GREEN]$BLACK\$$BLACK "
;;
brown)
PS1="${TITLEBAR}$BROWN[$LIGHT_BROWN\u$BROWN@$LIGHT_BROWN\h$BROWN:$LIGHT_CYAN\w$BROWN]$BLACK\$$BLACK "
;;
purple)
PS1="${TITLEBAR}$PURPLE[$PURPLE\u$PURPLE@$PURPLE\h$PURPLE:$BLACK\w$PURPLE]$BLACK\$$BLACK "
;;
*)
PS1="[\u@\h:\w]\$ "
;;
esac
PS2='> '
PS4='+ '
}
case $HOSTNAME in
pekmac*) prompt red ;;
workhorse*) prompt purple ;;
linode*) prompt green ;;
*) prompt blue ;;
esac
# start up ssh-agent on login
SSH_ENV="$HOME/.ssh/environment.$HOST"
function start_agent {
export SSH_AUTH_SOCK=${SSH_ENV}.sock
echo "Initialising new SSH agent..."
rm -f $SSH_AUTH_SOCK
/usr/bin/ssh-agent -a "$SSH_AUTH_SOCK" | sed 's/^echo/#echo/' > "${SSH_ENV}"
echo succeeded
chmod 600 "${SSH_ENV}"
. "${SSH_ENV}" > /dev/null
for possiblekey in ${HOME}/.ssh/id_*; do
if grep -q PRIVATE "$possiblekey"; then
ssh-add "$possiblekey"
fi
done
}
# Source SSH settings, if applicable
if [ ! ${SSH_AGENT_PID} ]; then
# echo "SSH_ENV = $SSH_ENV"
# do we have a stale/empty env file?
if [ -f "${SSH_ENV}" ] && [ ! -s "${SSH_ENV}" ]; then
echo "found empty ${SSH_ENV}"
rm -f "${SSH_ENV}"
fi
if [ -s "${SSH_ENV}" ]; then
#cat $SSH_ENV
. "${SSH_ENV}" > /dev/null
#ps ${SSH_AGENT_PID} doesn't work under cywgin
#echo "checking for running ssh-agent: ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent"
ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent > /dev/null || {
start_agent;
}
else
start_agent;
fi
fi
# no timeout on OSX
function timeout() { perl -e 'alarm shift; exec @ARGV' "$@"; }