Last active
May 27, 2022 16:30
-
-
Save renaco/c6dd94cf50e193299c11 to your computer and use it in GitHub Desktop.
.bash_profile for mac & .bashrc for ubuntu
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# only linux and mac | |
export PATH=~/bin:$PATH | |
export PATH="/usr/local/mysql/bin:$PATH" | |
# git bash auto-completion | |
source `brew --prefix git`/etc/bash_completion.d/git-completion.bash | |
# latest versions of git has the prompt stuff on an extra file | |
__git_prompt_file=`brew --prefix git`/etc/bash_completion.d/git-prompt.sh | |
if [ -f "$__git_prompt_file" ] | |
then | |
source $__git_prompt_file | |
fi | |
# begin to cross os (windows, linux and mac) | |
# alias 'git' to 'g' | |
alias g='git' | |
alias gs='git status' | |
alias gc='git commit -m ' | |
alias ga='git add ' | |
alias gd='git diff ' | |
alias gr='git remote ' | |
alias gck='git checkout' | |
alias gb='git branch ' | |
alias gl='git log ' | |
alias gd='git diff ' | |
alias gdl='git diff HEAD^ HEAD ' | |
alias gco='git checkout ' | |
alias gst='git status ' | |
alias gsta='git stash save ' | |
alias gcl='git clone ' | |
alias gf='git fetch ' | |
alias clean_='find . -name '._*' -delete' | |
alias cleanorig='find . -name '.orig' -delete' | |
alias cleanbak='find . -name '.bak' -delete' | |
alias dus='du -sh ' | |
alias rmf='rm -rf ' | |
alias lsl='ls -la ' | |
alias npmi='npm install ' | |
alias npms='npm start ' | |
alias ys='yarn run start ' | |
alias yi='yarn install ' | |
alias yb='yarn run build ' | |
alias ngrok='./ngrok http ' | |
alias ltn='lt --port ' | |
alias proj='cd && cd projects ' | |
alias wpk='webpack ' | |
alias ..='cd .. ' | |
alias la='ls -la ' | |
alias psts='pushstate-server ' | |
alias lvsr='live-server ' | |
# Autocomplete g command too | |
complete -o default -o nospace -F _git g | |
# very useful git related methods | |
function current_branch() { | |
ref=$(git symbolic-ref HEAD 2> /dev/null) || return | |
echo ${ref#refs/heads/} | |
} | |
function ggpull() { | |
git pull $1 $([[ $2 ]] && echo $2 || echo origin $(current_branch)) | |
} | |
function ggpush() { | |
git push $1 $([[ $2 ]] && echo $2 || echo origin $(current_branch)) | |
} | |
Color_Off="\[\033[0m\]" # text reset | |
IBlack="\[\033[0;90m\]" # black | |
IRed="\[\033[0;91m\]" # red | |
IGreen="\[\033[0;92m\]" # green | |
IYellow="\[\033[0;93m\]" # yellow | |
# time vars | |
Time12h="\T" | |
PathShort="\w" | |
export GIT_PS1_SHOWDIRTYSTATE=true | |
export GIT_PS1_SHOWUNTRACKEDFILES=true | |
export GIT_PS1_SHOWSTASHSTATE=true | |
export PS1="${IBlack}${Time12h}${Color_Off} \$(declare -F __git_ps1 &>/dev/null && __git_ps1 '(%s) ')${IYellow}${PathShort}${Color_Off} \$ " | |
## | |
# Your previous /Users/CurrentUser/.bash_profile file was backed up as /Users/CurrentUser/.bash_profile.macports-saved_2014-10-20_at_18:34:45 | |
## | |
# MacPorts Installer addition on 2014-10-20_at_18:34:45: adding an appropriate PATH variable for use with MacPorts. | |
export PATH="/opt/local/bin:/opt/local/sbin:$PATH" | |
# Finished adapting your PATH environment variable for use with MacPorts. | |
test -e "${HOME}/.iterm2_shell_integration.bash" && source "${HOME}/.iterm2_shell_integration.bash" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# ~/.bashrc: executed by bash(1) for non-login shells. | |
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) | |
# for examples | |
# If not running interactively, don't do anything | |
case $- in | |
*i*) ;; | |
*) return;; | |
esac | |
# don't put duplicate lines or lines starting with space in the history. | |
# See bash(1) for more options | |
HISTCONTROL=ignoreboth | |
# append to the history file, don't overwrite it | |
shopt -s histappend | |
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) | |
HISTSIZE=1000 | |
HISTFILESIZE=2000 | |
# check the window size after each command and, if necessary, | |
# update the values of LINES and COLUMNS. | |
shopt -s checkwinsize | |
# If set, the pattern "**" used in a pathname expansion context will | |
# match all files and zero or more directories and subdirectories. | |
#shopt -s globstar | |
# make less more friendly for non-text input files, see lesspipe(1) | |
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" | |
# set variable identifying the chroot you work in (used in the prompt below) | |
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then | |
debian_chroot=$(cat /etc/debian_chroot) | |
fi | |
# set a fancy prompt (non-color, unless we know we "want" color) | |
case "$TERM" in | |
xterm-color|*-256color) color_prompt=yes;; | |
esac | |
# uncomment for a colored prompt, if the terminal has the capability; turned | |
# off by default to not distract the user: the focus in a terminal window | |
# should be on the output of commands, not on the prompt | |
#force_color_prompt=yes | |
if [ -n "$force_color_prompt" ]; then | |
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then | |
# We have color support; assume it's compliant with Ecma-48 | |
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such | |
# a case would tend to support setf rather than setaf.) | |
color_prompt=yes | |
else | |
color_prompt= | |
fi | |
fi | |
if [ "$color_prompt" = yes ]; then | |
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' | |
else | |
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' | |
fi | |
unset color_prompt force_color_prompt | |
# If this is an xterm set the title to user@host:dir | |
case "$TERM" in | |
xterm*|rxvt*) | |
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" | |
;; | |
*) | |
;; | |
esac | |
# enable color support of ls and also add handy aliases | |
if [ -x /usr/bin/dircolors ]; then | |
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" | |
alias ls='ls --color=auto' | |
#alias dir='dir --color=auto' | |
#alias vdir='vdir --color=auto' | |
alias grep='grep --color=auto' | |
alias fgrep='fgrep --color=auto' | |
alias egrep='egrep --color=auto' | |
fi | |
# colored GCC warnings and errors | |
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' | |
# some more ls aliases | |
alias ll='ls -alF' | |
alias la='ls -A' | |
alias l='ls -CF' | |
# more custom alias | |
# latest versions of git has the prompt stuff on an extra file | |
# __git_prompt_file=`brew --prefix git`/etc/bash_completion.d/git-prompt.sh | |
if [ -f "$__git_prompt_file" ] | |
then | |
source $__git_prompt_file | |
fi | |
# begin to cross os (windows, linux and mac) | |
# alias 'git' to 'g' | |
alias g='git' | |
alias gs='git status' | |
alias gc='git commit -m ' | |
alias ga='git add ' | |
alias gd='git diff ' | |
alias gr='git remote ' | |
alias gck='git checkout' | |
alias gb='git branch ' | |
alias gl='git log ' | |
alias gd='git diff ' | |
alias gdl='git diff HEAD^ HEAD ' | |
alias gck='git checkout ' | |
alias gst='git stash ' | |
alias gcl='git clone ' | |
alias gf='git fetch ' | |
alias clean_='find . -name '._*' -delete' | |
alias cleanorig='find . -name '.orig' -delete' | |
alias cleanbak='find . -name '.bak' -delete' | |
alias dus='du -sh ' | |
alias rmf='rm -rf ' | |
alias lsl='ls -la ' | |
alias npmi='npm install ' | |
alias npms='npm start ' | |
alias ys='yarn run start ' | |
alias yi='yarn install ' | |
alias yb='yarn run build ' | |
alias ngrok='./ngrok http ' | |
alias ltn='lt --port ' | |
alias proj='cd && cd projects ' | |
alias wpk='webpack ' | |
alias ..='cd .. ' | |
alias la='ls -la ' | |
alias psts='pushstate-server ' | |
alias lvsr='live-server ' | |
# apps | |
alias lzg='lazygit ' | |
alias pbcopy="xclip -sel clip" | |
# Autocomplete g command too | |
complete -o default -o nospace -F _git g | |
# very useful git related methods | |
function current_branch() { | |
ref=$(git symbolic-ref HEAD 2> /dev/null) || return | |
echo ${ref#refs/heads/} | |
} | |
function gpull() { | |
git pull $1 $([[ $2 ]] && echo $2 || echo origin $(current_branch)) | |
} | |
function gpush() { | |
git push $1 $([[ $2 ]] && echo $2 || echo origin $(current_branch)) | |
} | |
Color_Off="\[\033[0m\]" # text reset | |
IBlack="\[\033[0;90m\]" # black | |
IRed="\[\033[0;91m\]" # red | |
IGreen="\[\033[0;92m\]" # green | |
IYellow="\[\033[0;93m\]" # yellow | |
# time vars | |
Time12h="\T" | |
PathShort="\w" | |
export GIT_PS1_SHOWDIRTYSTATE=true | |
export GIT_PS1_SHOWUNTRACKEDFILES=true | |
export GIT_PS1_SHOWSTASHSTATE=true | |
export PS1="${IBlack}${Time12h}${Color_Off} \$(declare -F __git_ps1 &>/dev/null && __git_ps1 '(%s) ')${IYellow}${PathShort}${Color_Off} \$ " | |
# Add an "alert" alias for long running commands. Use like so: | |
# sleep 10; alert | |
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' | |
# Alias definitions. | |
# You may want to put all your additions into a separate file like | |
# ~/.bash_aliases, instead of adding them here directly. | |
# See /usr/share/doc/bash-doc/examples in the bash-doc package. | |
if [ -f ~/.bash_aliases ]; then | |
. ~/.bash_aliases | |
fi | |
# enable programmable completion features (you don't need to enable | |
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile | |
# sources /etc/bash.bashrc). | |
if ! shopt -oq posix; then | |
if [ -f /usr/share/bash-completion/bash_completion ]; then | |
. /usr/share/bash-completion/bash_completion | |
elif [ -f /etc/bash_completion ]; then | |
. /etc/bash_completion | |
fi | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment