generic PATH-like functions (del/append...) + remove snap in PATH
This commit is contained in:
@@ -16,26 +16,34 @@
|
|||||||
# [ -f "$HOME/.bashrc.$USER" ] && . "$HOME/.bashrc.$USER"
|
# [ -f "$HOME/.bashrc.$USER" ] && . "$HOME/.bashrc.$USER"
|
||||||
|
|
||||||
# _remove $1 from PATH
|
# _remove $1 from PATH
|
||||||
_path_del() {
|
_var_del() {
|
||||||
local _l=":$PATH:"
|
local -n _p_del=$1
|
||||||
while [[ $_l =~ :$1: ]]; do
|
local _l=":$_p_del:"
|
||||||
_l=${_l//:$1:/:}
|
|
||||||
|
while [[ $_l =~ :$2: ]]; do
|
||||||
|
_l=${_l//:$2:/:}
|
||||||
done
|
done
|
||||||
_l=${_l%:}
|
_l=${_l%:}
|
||||||
_l=${_l#:}
|
_l=${_l#:}
|
||||||
PATH="$_l"
|
_p_del="$_l"
|
||||||
}
|
}
|
||||||
|
|
||||||
# _prepend : prepend $1 to PATH.
|
# _prepend : prepend $1 to PATH.
|
||||||
_path_prepend() {
|
_var_prepend() {
|
||||||
_path_del "$1"
|
local -n _p_prepend=$1
|
||||||
PATH="$1:$PATH"
|
|
||||||
|
_var_del _p_prepend "$2"
|
||||||
|
[[ -z $_p_prepend ]] && _p_prepend="$2" && return
|
||||||
|
_p_prepend="$2:$_p_prepend"
|
||||||
}
|
}
|
||||||
|
|
||||||
# _append : append $1 to PATH.
|
# _append : append $1 to PATH.
|
||||||
_path_append() {
|
_var_append() {
|
||||||
_path_del "$1"
|
local -n _p_append=$1
|
||||||
PATH="$PATH:$1"
|
|
||||||
|
_var_del _p_append "$2"
|
||||||
|
[[ -z $_p_append ]] && _p_append="$2" && return
|
||||||
|
_p_append="$_p_append:$2"
|
||||||
}
|
}
|
||||||
|
|
||||||
# adjust PATH. Below paths will be added at beginning.
|
# adjust PATH. Below paths will be added at beginning.
|
||||||
@@ -47,10 +55,12 @@ _lpath=("$HOME/bin/$(uname -s)-$(uname -m)"
|
|||||||
# loop array in reverse order. Note: We do not test for path existence and add it
|
# loop array in reverse order. Note: We do not test for path existence and add it
|
||||||
# unconditionally, to avoid automounter interference.
|
# unconditionally, to avoid automounter interference.
|
||||||
for (( _i = ${#_lpath[@]} - 1; _i >= 0; --_i )); do
|
for (( _i = ${#_lpath[@]} - 1; _i >= 0; --_i )); do
|
||||||
_path_prepend "${_lpath[_i]}"
|
_var_prepend PATH "${_lpath[_i]}"
|
||||||
done
|
done
|
||||||
unset _lpath
|
unset _lpath
|
||||||
_path_append /usr/games
|
|
||||||
|
# why is it in default Ubuntu path ?
|
||||||
|
_var_del PATH /snap/bin
|
||||||
|
|
||||||
# enable core file
|
# enable core file
|
||||||
ulimit -Sc 102400 # in 1024 bytes, 100Mb
|
ulimit -Sc 102400 # in 1024 bytes, 100Mb
|
||||||
|
Reference in New Issue
Block a user