mirror of
https://github.com/wnlen/clash-for-linux.git
synced 2025-05-07 20:44:44 +08:00
feat: improve env command injecting
This commit is contained in:
parent
607fa2afde
commit
cfa14d6fc3
20
scripts/functions.bash
Normal file
20
scripts/functions.bash
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
function proxy_on() {
|
||||||
|
export http_proxy=http://127.0.0.1:7890
|
||||||
|
export https_proxy=http://127.0.0.1:7890
|
||||||
|
export no_proxy=127.0.0.1,localhost
|
||||||
|
export HTTP_PROXY=http://127.0.0.1:7890
|
||||||
|
export HTTPS_PROXY=http://127.0.0.1:7890
|
||||||
|
export NO_PROXY=127.0.0.1,localhost
|
||||||
|
echo -e "\033[32m[√] 已开启代理\033[0m"
|
||||||
|
}
|
||||||
|
|
||||||
|
# 关闭系统代理
|
||||||
|
function proxy_off(){
|
||||||
|
unset http_proxy
|
||||||
|
unset https_proxy
|
||||||
|
unset no_proxy
|
||||||
|
unset HTTP_PROXY
|
||||||
|
unset HTTPS_PROXY
|
||||||
|
unset NO_PROXY
|
||||||
|
echo -e "\033[31m[×] 已关闭代理\033[0m"
|
||||||
|
}
|
21
scripts/functions.fish
Normal file
21
scripts/functions.fish
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
# 开启系统代理
|
||||||
|
function proxy_on
|
||||||
|
export http_proxy=http://127.0.0.1:7890
|
||||||
|
export https_proxy=http://127.0.0.1:7890
|
||||||
|
export no_proxy=127.0.0.1,localhost
|
||||||
|
export HTTP_PROXY=http://127.0.0.1:7890
|
||||||
|
export HTTPS_PROXY=http://127.0.0.1:7890
|
||||||
|
export NO_PROXY=127.0.0.1,localhost
|
||||||
|
echo -e "\033[32m[√] 已开启代理\033[0m"
|
||||||
|
end
|
||||||
|
|
||||||
|
# 关闭系统代理
|
||||||
|
function proxy_off
|
||||||
|
set -e http_proxy
|
||||||
|
set -e https_proxy
|
||||||
|
set -e no_proxy
|
||||||
|
set -e HTTP_PROXY
|
||||||
|
set -e HTTPS_PROXY
|
||||||
|
set -e NO_PROXY
|
||||||
|
echo -e "\033[31m[×] 已关闭代理\033[0m"
|
||||||
|
end
|
47
setup.sh
47
setup.sh
|
@ -1,32 +1,29 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
echo -e "Run this with root permission!\n"
|
Server_Dir=$(cd $(dirname "${BASH_SOURCE[0]}") && pwd)
|
||||||
|
fish_func_path=$Server_Dir/scripts/functions.fish
|
||||||
|
bash_func_path=$Server_Dir/scripts/functions.bash
|
||||||
|
|
||||||
# 添加环境变量(root权限)
|
# 获取当前用户默认的shell解释器路径
|
||||||
cat>/etc/profile.d/clash.fish<<EOF
|
default_shell=$(getent passwd "$USER" | awk -F: '{print $7}')
|
||||||
# 开启系统代理
|
|
||||||
function proxy_on
|
|
||||||
export http_proxy=http://127.0.0.1:7890
|
|
||||||
#export https_proxy=http://127.0.0.1:7890
|
|
||||||
export no_proxy=127.0.0.1,localhost
|
|
||||||
export HTTP_PROXY=http://127.0.0.1:7890
|
|
||||||
#export HTTPS_PROXY=http://127.0.0.1:7890
|
|
||||||
export NO_PROXY=127.0.0.1,localhost
|
|
||||||
echo -e "\033[32m[√] 已开启代理\033[0m"
|
|
||||||
end
|
|
||||||
|
|
||||||
# 关闭系统代理
|
# 提取shell解释器的名称
|
||||||
function proxy_off
|
shell_name=$(basename "$default_shell")
|
||||||
set -e http_proxy
|
|
||||||
set -e https_proxy
|
|
||||||
set -e no_proxy
|
|
||||||
set -e HTTP_PROXY
|
|
||||||
set -e HTTPS_PROXY
|
|
||||||
set -e NO_PROXY
|
|
||||||
echo -e "\033[31m[×] 已关闭代理\033[0m"
|
|
||||||
end
|
|
||||||
EOF
|
|
||||||
|
|
||||||
echo -e "请执行以下命令加载环境变量: source /etc/profile.d/clash.fish\n"
|
if [ "$shell_name" = "fish" ]; then
|
||||||
|
if ! grep -q "$fish_func_path" ~/.config/fish/config.fish; then
|
||||||
|
echo "source $fish_func_path" >> ~/.config/fish/config.fish
|
||||||
|
fi
|
||||||
|
elif [ "$shell_name" = "bash" ]; then
|
||||||
|
if ! grep -q "$bash_func_path" ~/.bashrc; then
|
||||||
|
echo "source $bash_func_path" >> ~/.bashrc
|
||||||
|
fi
|
||||||
|
elif [ "$shell_name" = "zsh" ]; then
|
||||||
|
if ! grep -q "$bash_func_path" ~/.zshrc; then
|
||||||
|
echo "source $bash_func_path" >> ~/.zshrc
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -e "环境变量已注入\n"
|
||||||
echo -e "请执行以下命令开启系统代理: proxy_on\n"
|
echo -e "请执行以下命令开启系统代理: proxy_on\n"
|
||||||
echo -e "若要临时关闭系统代理,请执行: proxy_off\n"
|
echo -e "若要临时关闭系统代理,请执行: proxy_off\n"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user