-
Notifications
You must be signed in to change notification settings - Fork 1
/
bashrc_cygwin
193 lines (161 loc) · 5.23 KB
/
bashrc_cygwin
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
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
# To pick up the latest recommended .bashrc content,
# look in /etc/defaults/etc/skel/.bashrc
source ~/xbot/mavnn-mintty-solarized/sol.dark
# Modifying /etc/skel/.bashrc directly will prevent
# setup from updating it.
# Don't wait for job termination notification
# set -o notify
# Don't use ^D to exit
# set -o ignoreeof
# Use case-insensitive filename globbing
# shopt -s nocaseglob
# Make bash append rather than overwrite the history on disk
# shopt -s histappend
# When changing directory small typos can be ignored by bash
# for example, cd /vr/lgo/apaache would find /var/log/apache
# shopt -s cdspell
# check the hash before searching the PATH directories
shopt -s checkhash
# do not search the path when .-sourcing a file
shopt -u sourcepath
# Completion options
# ##################
# These completion tuning parameters change the default behavior of bash_completion:
# Define to access remotely checked-out files over passwordless ssh for CVS
# COMP_CVS_REMOTE=1
# Define to avoid stripping description in --option=description of './configure --help'
# COMP_CONFIGURE_HINTS=1
# Define to avoid flattening internal contents of tar files
# COMP_TAR_INTERNAL_PATHS=1
# If this shell is interactive, turn on programmable completion enhancements.
# Any completions you add in ~/.bash_completion are sourced last.
# case $- in
# *i*) [[ -f /etc/bash_completion ]] && . /etc/bash_completion ;;
# esac
function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
function proml {
local BLUE="\[\033[0;34m\]"
local RED="\[\033[0;31m\]"
local LIGHT_RED="\[\033[1;31m\]"
local GREEN="\[\033[0;32m\]"
local LIGHT_GREEN="\[\033[1;32m\]"
local WHITE="\[\033[1;37m\]"
local LIGHT_GRAY="\[\033[0;37m\]"
#case $TERM in
# xterm*)
# TITLEBAR='\[\033]0;\u@\h:\w\007\]'
# ;;
# *)
# TITLEBAR=""
# ;;
#esac
PS1="${TITLEBAR}\
$BLUE[$RED\$(date +%H:%M)$BLUE]\
$BLUE[$RED\u@\h:\w$GREEN\$(parse_git_branch)$BLUE]\
$GREEN\$ "
PS2='> '
PS4='+ '
}
#proml
#PS1='`a=$?;if [ $a -ne 0 ]; then a=" "$a; echo -ne "\[\e[s\e[1A\e[$((COLUMNS-2))G\e[31m\e[1;41m${a:(-3)}\e[u\]\[\e[0m\e[7m\e[2m\]"; fi`\[\e[1;32m\]\u@\h:\[\e[0m\e[1;34m\]\W\[\e[1;34m\]\$ \[\e[0m\]'
PS1='`a=$?;if [ $a -ne 0 ]; then echo -n -e "\[\e[01;32;41m\]{$a}"; fi`\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\W`b=$(parse_git_branch); if [ x"$b" != "x" ]; then echo -n -e "\[\e[33;40m\](branch:$b)\[\033[01;32m\]\[\e[00m\]"; fi`\[\033[01;34m\] $ \[\e[00m\]'
# History Options
# ###############
# Don't put duplicate lines in the history.
# export HISTCONTROL="ignoredups"
# Ignore some controlling instructions
# export HISTIGNORE="[ ]*:&:bg:fg:exit"
# Whenever displaying the prompt, write the previous line to disk
# export PROMPT_COMMAND="history -a"
#export GIT_SSH=/cygdrive/d/dev/tool/putty/plink.exe
export LANG=en_US.UTF-8
export GIT_SSH=~/scripts/githelper.sh
export PATH=/usr/local/bin:/usr/bin:/bin
#export PATH=$PATH:/cygdrive/c/WINDOWS/system32
export PATH=$PATH:~/scripts
unset PYTHONHOME
# Aliases
# #######
# Default to human readable figures
alias df='df -h'
alias du='du -h'
# Git aliases
alias gst='git status'
alias pull='git pull'
alias push='git push'
alias commit='git commit'
alias amend='git commit --amend'
alias diffhead='git diff HEAD'
# Misc :)
alias less='less -r' # raw control characters
# alias whence='type -a' # where, of a sort
alias grep='grep --color' # show differences in colour
alias +x='chmod +x'
alias cls='clear'
#alias cd=cdl
alias ..='cd ..'
alias z='apack'
alias x='aunpack'
alias say='echo'
# Some shortcuts for different directory listings
alias ls='ls -hF --color=tty' # classify files in colour
alias dir='ls --color=auto --format=vertical'
alias vdir='ls --color=auto --format=long'
alias ll='ls -l' # long list
alias la='ls -Al' # all but . and ..
alias l='ls -CF' #
alias r='rm -f'
alias rr='rm -rf'
alias upgrade='/cygdrive/d/cygwin/setup.exe'
alias showd='ls /cygdrive'
alias v='vim'
alias vi='vim'
alias c='cat'
alias reload='. ~/.bashrc'
alias config='vim ~/.bashrc'
alias newcygwin='upgrade_cygwin'
# Corp issues
alias cloud='ssh -i ~/.ssh/cloud'
alias ccp='scp -i ~/.ssh/cloud'
alias cdsaas='cd /cygdrive/d/CCWork/CRM7.2_SP2_SAAS_Dev/CRM7_VOB/CRM7_DOC/tsvr'
# Functions
# #########
# Some example functions
# function settitle() { echo -ne "\e]2;$@\a\e]1;$@\a"; }
cdl() {
cd "${1}";
ls;
}
cdd() {
cd "/cygdrive/${1}";
}
lsaccess() {
if [ $# -eq 0 ]; then
amount=10;
else
amount=$1
fi
grep -v 127.0.0.1 /cygdrive/d/apache/logs/access.log|grep -v 10.1.29.32|grep -v 10.10.71.94|tail -n $amount
}
upgrade_cygwin()
{
cwd=`pwd`
cd /
wget -m http://cygwin.com/setup.exe
cd $cwd
echo 'Job done !'
}
cld()
{
ssh -i ~/.ssh/cloud root@"$@"
}
publishcloudkit()
{
test $# -eq 0 && echo 'One or more parameters are needed !' >&2 && return 1
for p in "$@"; do
ccp /cygdrive/d/CCWork/CRM7.2_SP2_SAAS_Dev/CRM7_VOB/CRM7_DOC/tsvr/cloudkit.sh root@${p}:/usr/bin/
done
return 0
}