Ich möchte die System-Proxy-Adresse über meine Qt-Anwendung festlegen. Also habe ich mich gefragt, ob ich ein Skript schreiben könnte, das jedes Mal von meiner Anwendung ausgeführt werden kann, um die Proxy-Adresse zu ändern.
Ich habe versucht:
#! /bin/sh
echo "# Generated by Application"
export $1
echo "Proxy Address ${1}
aber dieses Skript war nicht erfolgreich. Ich glaube, der Befehl „Export“ konnte nicht ausgeführt werden.
Kann mir jemand bei der Lösung dieses Problems helfen?
Akzeptierte Antwort:
Versuchen Sie Folgendes:
#! /bin/sh
echo "# Generated by Application"
export http_proxy='http://$1/'
export ftp_proxy='http://$1/'
Hinweis:
- Ihr Argumentstring ($1) sollte so aussehen
user_id:[email protected]:proxy_port
- Wenn Sie Benutzer-ID und Passwort nicht verwenden, sollte die Argumentzeichenfolge ($1) sein
proxy.server.addr:proxy_port
- Sie können https_proxy und socks_proxy bei Bedarf exportieren.
- Um zu sehen, ob Ihr Proxy eingerichtet ist oder nicht, verwenden Sie
env | grep proxy
Um den System-Proxy mithilfe des Shell-Skripts zu ändern, versuchen Sie Folgendes:
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
Wenn Sie Benutzerauthentifizierungspass und ID haben
gsettings set org.gnome.system.proxy.http authentication-user 'user_id'
gsettings set org.gnome.system.proxy.http authentication-password 'password'
Um http_proxy für alle anderen Proxys zu verwenden
gsettings set org.gnome.system.proxy use-same-proxy true
So legen Sie den Bypass-Proxy für einen beliebigen Host fest
gsettings set org.gnome.system.proxy ignore-hosts "['localhost', '127.0.0.1', 'all', 'other', 'hosts']"