Como definir o endereço de proxy de todo o sistema usando o script de shell?

6

Eu quero definir o endereço de proxy do sistema por meio do meu aplicativo Qt. Então eu queria saber se eu poderia escrever um script que pode ser executado pelo meu aplicativo toda vez para alterar o endereço do proxy.

Eu tentei:

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

 export 
 echo "Proxy Address 

mas esse script não foi bem-sucedido. Acho que não foi possível executar o comando "export".

Alguém pode me ajudar a resolver esse problema?

    
por skg 31.10.2013 / 11:11

1 resposta

8

Tente isto:

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

Nota:

  • sua string de argumento ($ 1) deve ser assim

user_id:[email protected]:proxy_port

  • Se você não usar o ID do usuário e a senha, a sequência de argumentos ($ 1) deverá ser

proxy.server.addr:proxy_port

  • você pode exportar https_proxy e socks_proxy se precisar.
  • Para ver se seu proxy está definido ou não, use env | grep proxy

Para alterar o proxy do sistema usando o script de shell, tente estas:

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

Se você tiver passe de autenticação de usuário e id

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

Para usar http_proxy para todos os outros proxy

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

Para ignorar proxy para qualquer host

gsettings set org.gnome.system.proxy ignore-hosts "['localhost',  '127.0.0.1', 'all', 'other', 'hosts']"
    
por souravc 31.10.2013 / 11:40