Как установить общесистемный адрес прокси-сервера с помощью скрипта оболочки?

Как установить общесистемный адрес прокси-сервера с помощью скрипта оболочки?

Я хочу установить адрес прокси-сервера системы через свое приложение Qt. Поэтому мне было интересно, могу ли я написать скрипт, который будет выполняться моим приложением каждый раз для изменения адреса прокси.

Я пытался :

 #! /bin/sh 
 echo "# Generated by Application"

 export $1
 echo "Proxy Address ${1}

но этот скрипт не удался. Я думаю, что он не смог выполнить команду "export".

Может ли кто-нибудь помочь мне решить эту проблему?

решение1

Попробуй это:

#! /bin/sh
echo "# Generated by Application"
export http_proxy='http://$1/'
export ftp_proxy='http://$1/'

Примечание:

  • ваша строка аргумента ($1) должна быть такой

user_id:[email protected]:proxy_port

  • Если вы не используете идентификатор пользователя и пароль, то аргумент string($1) должен быть

proxy.server.addr:proxy_port

  • При необходимости вы можете экспортировать https_proxy и socks_proxy.
  • Чтобы узнать, установлен ли ваш прокси-сервер, используйтеenv | grep proxy

Чтобы изменить системный прокси с помощью скрипта оболочки, попробуйте выполнить следующие действия:

gsettings set org.gnome.system.proxy mode 'manual'
gsettings set org.gnome.system.proxy.http enabled true
gsettings set org.gnome.system.proxy.http host 'proxy.server.addr'
gsettings set org.gnome.system.proxy.http port proxy_port

Если у вас есть пароль и идентификатор аутентификации пользователя

gsettings set org.gnome.system.proxy.http authentication-user 'user_id'
gsettings set org.gnome.system.proxy.http authentication-password 'password'

Чтобы использовать http_proxy для всех остальных прокси-серверов

gsettings set org.gnome.system.proxy use-same-proxy true

Чтобы настроить обход прокси для любого хоста

gsettings set org.gnome.system.proxy ignore-hosts "['localhost',  '127.0.0.1', 'all', 'other', 'hosts']"

Связанный контент