Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Firefoxproxy per Batch entfernen

Frage Entwicklung Batch & Shell

Mitglied: elPadrino1010

elPadrino1010 (Level 1) - Jetzt verbinden

23.06.2009, aktualisiert 18:28 Uhr, 6912 Aufrufe, 4 Kommentare

Hi Experten und Expertinnen,

eins vorweg, ich bin absoluter Neuling was batches angeht.

Ich habe folgendes Problem, nach der Firewallumstellung des Unternehmens sollen alle User ohne Proxy ins Internet gehen, dies soll durch eine Batch realisiert werden. Beim Internet Explorer ist es kein Problem, da es dort nur einige reg Einträge sind, allerdings habe ich Probleme mit dem Firefox, da dort der Proxy Userbezogen in der prefs.js hinterlegt wird, die in einem Unterordner liegt, der bei jedem User anders heißt, unter dem Pfad
C:\Dokumente und Einstellungen\User\Anwendungsdaten\Mozilla\Firefox\Profiles

Nun habe ich versucht aus der prefs.js alles rauszukopieren was nicht mit dem Proxy zu tun hat.

findstr /s /v /i "proxy" "%appdata%\prefs.js" >> "%appdata%\prefs.js"

Hat damit auch prima funktioniert, alle Proxyeinträge sind weg, bis auf die Tatsache, dass er mir vor allen Werten den Pfad mit eingefügt hat. Das sieht dann so aus…

%appdata%\Mozilla\Firefox\Profiles\kxtp0srq.default\prefs.js:user_pref("accessibility.typeaheadfind.flashBar", 0);
%appdata%\Mozilla\Firefox\Profiles\kxtp0srq.default\prefs.js:user_pref("app.update.auto", false);
%appdata%\Mozilla\Firefox\Profiles\kxtp0srq.default\prefs.js:user_pref("app.update.disable_button.showUpdateHistory", false);
%appdata%\Mozilla\Firefox\Profiles\kxtp0srq.default\prefs.js:user_pref("app.update.lastUpdateTime.addon-background-update-timer", 1245701398);

Anstelle von %appdata% steht dort der volle Pfad zudem ist alles doppelt dar, sprich eine prefs.js liegt unter der anderen in einer Datei.

Meine Fragen sind folgende,

1.wie bekomme ich das hin das er mir die neue prefs.js ohne Pfade erstellt

2.wie bekomme ich diese dann wieder in den Ordner eingefügt wenn er bei jedem User anders heißt.

Hintergrund ist der, das die Startseiten die sich die User eingerichtet habe, bleiben sollen, den sonst könnte ich auch die ganze prefs.js löschen.

Ich hoffe das ich mein Problem verständlich erklärt habe und bedanke mich schon mal im voraus für die sicherlich hilfreichen Lösungsvorschläge.

Danke und Gruß

ITAzubiNeu
Mitglied: bastla
23.06.2009 um 18:53 Uhr
Hallo ITAzubiNeu und willkommen im Forum!

Für jeden einzelnen User (zB im Logonscript) etwa so:
01.
@echo off & setlocal 
02.
set "Pfad=%appdata%\Mozilla\Firefox\Profiles" 
03.
for /f "delims=" %%i in ('dir /s /b "%Pfad%\prefs.js"^|findstr /i "default\\prefs.js"') do (move "%%i" "%%i.bak" & findstr /v /i "proxy" "%%i.bak">"%%i")
Das Suchen nach "default\prefs.js" soll verhindern, dass andere "prefs.js" (zB unter "extensions") ebenfalls verarbeitet werden.

Die erstellte ".bak"-Datei kannst Du natürlich auch wieder löschen lassen.

Grüße
bastla
Bitte warten ..
Mitglied: elPadrino1010
23.06.2009 um 19:17 Uhr
Hi bastla,

super, das hat einwandfrei funktioniert, danke dafür.

Ich versteh nur nicht genau wie, z.B. die ".bak" Datei, wo legt er die den ab??? Da du ja meinst das ich die wieder löschen kann.

Und auch das restliche Skrip, könntest du es mir vielleicht in leicht groben Zügen erklären?

Vieln Dank nochmals.

Gruß ITAzubiNeu
Bitte warten ..
Mitglied: bastla
23.06.2009 um 19:34 Uhr
Hallo ITAzubiNeu!

Die ".bak"-Datei ist die ursprüngliche "prefs.js" mit dem Zusatz ".bak" und ließe sich daher mit der folgenden Zeile 3 löschen:
for /f "delims=" %%i in ('dir /s /b "%Pfad%\prefs.js"^|findstr /i "default\\prefs.js"') do (move "%%i" "%%i.bak" & findstr /v /i "proxy" "%%i.bak">"%%i" & del "%%i.bak")
Eine kurze Beschreibung dieser Zeile:

Mit der "for /f"-Schleife werden alle Ergebniszeilen von
dir /s /b "%Pfad%\prefs.js"|findstr /i "default\\prefs.js"
einzeln als "%%i" verfügbar gemacht - eigentlich sollte das ohnehin nur die eine gewünschte Zeile mit dem passenden Pfad sein. Der doppelte "\" im Suchbegriff ist erforderlich, weil "\" zum "Escapen" von Zeichen (damit diese als "gewöhnliche" Zeichen und nicht als "Spezialzeichen", wie etwa der Punkt oder "$", verstanden werden) verwendet wird (siehe "findstr /?").

move "%%i" "%%i.bak"
sorgt für das Umbenennen der gefundenen Datei (und überschreibt eine ev bereits bestehende ".bak"-Datei, was mit "ren" nicht möglich wäre).

Mit dem "&" werden einzelne Befehle verknüpft.

findstr /v /i "proxy" "%%i.bak">"%%i"
filtert die vorher umbenannte Datei und schreibt das Ergebnis als neue "prefs.js" ("%%i" enthält ja den ursprünglichen Pfad und Dateinamen). Hier wäre es egal, ob ">" (neu erstellen) oder ">>" (anfügen an bestehende Datei) verwendet wird, da es die Datei ohenhin nicht geben kann (wurde ja eben erst umbenannt).

Schließlich noch das Aufräumen:
del "%%i.bak"
löscht die umbenannte Originaldatei.
Noch eine Anmerkung: Die Verwendung der Anführungszeichen um die Dateipfade herum ist zumindest unter XP wichtig, da der Pfad dort defaultmäßig unterhalb von "C:\Dokumente und Einstellungen" liegt und daher Leerzeichen enthalten sind (abgesehen davon schaden die Anführungszeichen so gut wie nie).

Grüße
bastla
Bitte warten ..
Mitglied: elPadrino1010
23.06.2009 um 19:49 Uhr
Hi bastla,

dankeschön für die ausführliche Erklärung, mittlerweile komme ich dahinter wie es funktioniert.

Gruß und nochmals Danke

ITAzubiNeu
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...