-
Notifications
You must be signed in to change notification settings - Fork 0
/
aliases
168 lines (145 loc) · 3.75 KB
/
aliases
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
### aliases
# some colors
if ls --color &>/dev/null; then
alias ls='ls --color'
else
alias ls='ls -G'
fi
alias dir='dir --color'
alias vdir='vdir --color'
alias grep='grep --color'
alias fgrep='fgrep --color'
alias egrep='egrep --color'
# make it human readable
alias ll='ls -lh'
alias df='df -h'
alias du='du -h'
# git gud
alias gs='git status'
alias ga='git add'
alias gaa='git add --all'
alias grm='git rm'
alias gc='git commit'
alias gcm='git commit -m'
alias gcam='git commit -am'
alias gch='git checkout HEAD'
alias gct='git checkout --theirs'
alias gco='git checkout --ours'
alias grth='git reset --hard'
alias gcdf='git clean -df'
# misc aliases
alias xclip='xclip -selection clipboard'
alias cdmount='udisksctl mount -b /dev/sr0'
alias pidcat='pidcat --always-display-tags'
alias svnclean='svn st | grep ^! | awk "{print \\" --force \\"$2}" | xargs svn rm'
alias adbren='adbren --strict --format "%anime_name_romaji%_%episode%%version%[%group_short%](%crc32%).%filetype%"'
alias ps4wake='ps4-wake -jBW $PS4_CRED'
alias findlib='find * -type f -not -name "*.meta" -and -not -name "resources.config" -and -not -name ".DS_Store" | sort -h'
if command -v systemctl &>/dev/null; then
alias poweroff='systemctl poweroff'
alias restart='systemctl restart'
alias suspend='systemctl suspend'
alias hibernate='systemctl hibernate'
fi
### functions
# ssh with tmux
ssht(){
ssh $1 -t 'LANG=en_US.UTF-8 tmux a || LANG=en_US.UTF-8 tmux'
}
# git gudder
gcta(){
git checkout --theirs $1 && git add $1
}
gcoa(){
git checkout --ours $1 && git add $1
}
# copy svn properties from one file to another
svnpcopy(){
SRC=$1
[ -e "$SRC" ] || exit
shift
for PROP in $(svn pl "$SRC" | tail -n +2); do
VALUE=$(svn pg $PROP "$SRC")
for DST; do
[ -e "$DST" ] && svn ps $PROP "$VALUE" "$DST"
done
done
}
# remove all Android Studio and gradle files
fuckidea(){
DIR=$(pwd)
if [ $# -eq 1 ]; then
DIR=$1
fi
find $DIR \( \
-name ".externalNativeBuild" \
-or -name "build" \
-or -name "*.iml" \
-or -name ".idea" \
-or -name ".gradle" \
\) -prune -exec echo {} \; -exec rm -rf {} \;
}
# wait for the process to come up and then logcat for it
logcat(){
BUNDLE="$1"
shift
while :; do
PID=$(adb shell pidof "$BUNDLE")
if [ -n "$PID" ]; then
adb logcat --pid="$PID" "$@"
break
fi
done
}
# clear screen, start logging and kill app for new debug session
clearlogcat(){
if [ $1 = "-s" ]; then
START=true
APPID="$2"
else
START=false
APPID="$1"
fi
adb shell "am force-stop $APPID"
clear
tmux clear-history
adb logcat -b all -c
$START && adb shell "am start \$(cmd package resolve-activity --brief $APPID | tail -n1)"
logcat "$APPID"
}
# clear screen, start logging and kill app for new debug session
clearpidcat(){
if [ $1 = "-s" ]; then
START=true
APPID="$2"
else
START=false
APPID="$1"
fi
adb shell "am force-stop $APPID"
clear
tmux clear-history
adb logcat -b all -c
$START && adb shell "am start \$(cmd package resolve-activity --brief $APPID | tail -n1)"
pidcat "$APPID"
}
# mount necessary filesystems and chroot
mntchroot(){
if [ $EUID -ne 0 ]; then
echo "This command needs to be run as root"
return
fi
dir="$1"
if [ ! -e "$dir" ]; then
echo "Provided directory does not exist"
return
fi
mount -t proc none "$dir/proc"
mount --rbind /sys "$dir/sys"
mount --make-rslave "$dir/sys"
mount --rbind /dev "$dir/dev"
mount --make-rslave "$dir/dev"
cp /etc/resolv.conf "$dir/etc/"
chroot "$dir" /bin/bash
}
# vim: ft=sh