dot: bash add-to-path 函数添加 -s 静默参数
This commit is contained in:
@@ -5,7 +5,9 @@ unset basedir
|
|||||||
|
|
||||||
export JAVA_HOME="/opt/android-studio/jbr"
|
export JAVA_HOME="/opt/android-studio/jbr"
|
||||||
export ANDROID_HOME="${HOME}/Android/Sdk"
|
export ANDROID_HOME="${HOME}/Android/Sdk"
|
||||||
export NDK_HOME="$ANDROID_HOME/ndk/$(ls -1 $ANDROID_HOME/ndk)"
|
|
||||||
|
|
||||||
add-to-path "${ANDROID_HOME}/emulator" "${ANDROID_HOME}/platform-tools"
|
if [[ -d "${ANDROID_HOME}/ndk" ]]; then
|
||||||
|
export NDK_HOME="$ANDROID_HOME/ndk/$(ls -1 $ANDROID_HOME/ndk)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
add-to-path -s "${ANDROID_HOME}/emulator" "${ANDROID_HOME}/platform-tools"
|
||||||
|
|||||||
@@ -31,13 +31,36 @@ generate-bash-completion() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
add-to-path() {
|
add-to-path() {
|
||||||
if [[ $# -eq 0 ]]; then
|
local silence=false
|
||||||
echo "usage: add-to-path <path1> [path2 ...]" >&2
|
local -a dirs=()
|
||||||
|
|
||||||
|
while [[ $# -gt 0 ]]; do
|
||||||
|
case "$1" in
|
||||||
|
-s)
|
||||||
|
silence=true
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--)
|
||||||
|
shift
|
||||||
|
dirs+=("$@")
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
dirs+=("$1")
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [[ ${#dirs[@]} -eq 0 ]]; then
|
||||||
|
echo "usage: add-to-path [-s] <path1> [path2 ...]" >&2
|
||||||
|
echo "" >&2
|
||||||
|
echo " -s: if some path not exist, just skip it silently" >&2
|
||||||
|
echo "" >&2
|
||||||
echo "example: add-to-path /usr/local/bin /tmp/my-dir" >&2
|
echo "example: add-to-path /usr/local/bin /tmp/my-dir" >&2
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local -a dirs=("$@")
|
|
||||||
local dir
|
local dir
|
||||||
local dir_normalized
|
local dir_normalized
|
||||||
local new_path="$PATH"
|
local new_path="$PATH"
|
||||||
@@ -47,7 +70,9 @@ add-to-path() {
|
|||||||
|
|
||||||
dir_normalized="${dir%/}"
|
dir_normalized="${dir%/}"
|
||||||
if [[ ! -d "$dir_normalized" ]]; then
|
if [[ ! -d "$dir_normalized" ]]; then
|
||||||
echo "WARNING: '${dir}' is not a valid directory, skipped." >&2
|
if [[ "$silence" == false ]]; then
|
||||||
|
echo "WARNING: '${dir}' is not a valid directory, skipped." >&2
|
||||||
|
fi
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ source "${basedir}/function.bash"
|
|||||||
unset basedir
|
unset basedir
|
||||||
|
|
||||||
export PNPM_HOME="${HOME}/.local/share/pnpm"
|
export PNPM_HOME="${HOME}/.local/share/pnpm"
|
||||||
add-to-path $PNPM_HOME
|
add-to-path -s $PNPM_HOME
|
||||||
|
|
||||||
if [[ -x "$(type -p pnpm)" ]]; then
|
if [[ -x "$(type -p pnpm)" ]]; then
|
||||||
generate-bash-completion pnpm "pnpm completion bash"
|
generate-bash-completion pnpm "pnpm completion bash"
|
||||||
|
|||||||
@@ -21,5 +21,3 @@ if [[ -x $(type -p volta) || -x "${VOLTA_HOME}/bin/volta" ]]; then
|
|||||||
unhash-command-in-dirs "$bin_dir"
|
unhash-command-in-dirs "$bin_dir"
|
||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user