Top-Themen

Aktuelle Themen (A bis Z)

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 SetX und Benutzervariablen entfernen?!

Mitglied: der-blob

der-blob (Level 1) - Jetzt verbinden

04.10.2011, aktualisiert 15:24 Uhr, 7854 Aufrufe, 6 Kommentare

Hallo zusammen,
ich habe 2 kleine Fragen...

Frage 1: ist es möglich per batch BENUTZERvariablen zu ENTFERNEN? (setx variable "") macht diese ja nur "leer" aber entfernt sie nicht. - wenn ja: kann mir jemand sagen wie?

Frage 2:
ich habe folgendes kleines scriptchen...

01.
::@echo off 
02.
set /p lic="blahhhhhh" 
03.
set /p lan="Bitte Sprache angeben (german|english): " 
04.
if "%lan%"=="english" ( 
05.
set lan1=Englisch 
06.
) else ( 
07.
if "%lan%"=="german" ( 
08.
set lan1=Deutsch 
09.
) else ( 
10.
goto err1 
11.
12.
13.
 
14.
echo blahhhhh: %lic% 
15.
echo Die Sprache ist: %lan1% 
16.
 
17.
setx sprach %lan% 
18.
setx irgendwas 52%lic% 
19.
pause 
20.
exit 
21.
 
22.
:err1 
23.
echo ERROR 
24.
echo Sprache ist nicht english oder german. 
25.
echo ERROR 
26.
pause
Wenn ich nun eine shell aufmache, und in dieser Shell das Script ausführe, funktioniert alles wie es soll. Wenn ich jedoch das Script per Doppelklick ausführe, und halt german oder english eingebe (also nicht auf error läuft) ist es sozusagen in einer "endlos" schleife. Wenn ich jedoch auf error laufe funktioniert es Tadellos.

Jemand ne ahnung wie ich dieses script per doppelklick "ordentlich" ausführen kann?
Mitglied: 60730
04.10.2011 um 11:32 Uhr
moin,

ich habe ein paar Gegenfragen....
Frage 1: ist es möglich per batch BENUTZERvariablen zu ENTFERNEN? (setx variable "") macht diese ja nur "leer" aber entfernt sie nicht. - wenn ja: kann mir jemand sagen wie? face-smile

  • nunja - eigentlich ist eine leere Variable immer auch eine gelöschte und im Zweifel kannst du Benutzervariablen immer löschen, wenn du die im Kontext des Benutzers ausführst.
  • dann verstehe ich nicht, warum der User "english" ein/vertippen soll und du dann eh Englisch draus zimmerst - ein e oder d wäre doch einfacher...
  • leider haben die Codetags hier immer eine Nebenwirkung - hinter jeder Zeile ist ein Leerzeichen - von daher und weil der gelernte Bätchelohr es eh so haben will...
set "lan1"=="Englisch"
denn set test= (also leerzeichen), löscht tatsächlich nicht die Variable, sondern gibt Ihr den Wert "Leehrzeichen"

  • dein GewirrSpagehtticode von Zeile 5-12....
01.
if not "%lan%"=="english" if not "%lan%"=="german" goto err
Dort hast du die "" ja gesetzt, aber nicht überall

<Edit> - wtf ist %lan% und was soll%lan1%?
Bist du dir sicher, dass hier die Version steht, von der du deine Problematik geschildert hast?
</Edit>

Gruß
Bitte warten ..
Mitglied: der-blob
04.10.2011 um 11:47 Uhr
Hallo, erstmal Danke für das auflösen von mein gewirr... - es funktioniert zwar, aber sieht halt naja aus, aber soll auch nicht toll aussehen, ist nur eine "notlösung".

ich hätte vielleicht bisschen mehr dazu Schreiben sollen *schäm*

Ich weis mit set blah= hat man dann den tollen wert leer... jedoch bringt mir dies in diesem zusammenhang nichts.
Denn die Variablen welche ich definier, sind schon als Systemvariablen vorhanden, und sollen nur Temporär (wie gesagt notlösung) umgebogen werden und da mehrere Programme auf diese Variablen zugreifen. ist es am einfachsten (soweit ich weis) einfach Benutzervariablen zu definieren, da diese ja "aussagekräftiger" sind. Und die Systemvariablen mit ;.... zu erweitern ist Theoretisch möglich, jedoch fehlen den Usern dazu die Rechte. Und am ende der Woche sollen diese einfach wieder gelöscht werden, per Schedule Task, oder 2. Script ist ja am ende egal.

Und das mit den aus english -->Englisch ist nur damit man "Englisch" lesen kann.. im Prinzip ist es total egal ob man nun E, G bzw. D eintippt kann mir ja entsprechend meine Variablen raus"saugen".

Ich hoffe damit ist mein Problem besser nachzuvollziehen.

€:
zu den %lan% und %lan1%, wie gesagt das %lan1% ist nur für das echo da... kann man theoretisch(auch praktisch) Komplett rauswerfen... - denn verwendet wird ja das %lan% also, german oder english.


Gruß
Bitte warten ..
Mitglied: bastla
04.10.2011 um 12:52 Uhr
Hallo der-blob!

Die Beantwortung der Frage 1 überlasse ich mal MS themselves:
You cannot use the setx command to remove values that have been added to the local or system environments. You can use set with a variable name and no value to remove a corresponding value from the local environment.
"User"-Variablen solltest Du mit
setx Var ""
aber loswerden (zumindest unter XP soeben erfolgreich getestet) ...
Zu 2. hat T-Mo ja schon einiges angemerkt - ich würde aber jedefalls dem "if" noch ein "/i" spendieren ...

Grüße
bastla
Bitte warten ..
Mitglied: der-blob
04.10.2011 um 13:51 Uhr
Hallo,
danke für die Antwort, jedoch das ich mit setx var "" die variable "loswerde" wusst ich schon, nur das bringt mich an der stelle nicht genau weiter (siehe bild). - deshalb fragte ich ob da jemand noch was anderes kennt


9cab5892a4497d4af768bed156aae5e6 - Klicke auf das Bild, um es zu vergrößern


- Irgendwie glaube ich immer mehr das ich mit entweder besch... Ausgedrückt habe oder es einfach keine - für mich in diesem fall - funktionierende Lösung gibt.

Denn ne "leere" BENUTZERvariable bringt mir ja auch nichts, wenn später wieder die SYSTEMvariable genutzt werden soll..

Vielleicht kann mir ja doch jemand weiterhelfen, glaube es jedoch weniger. Werde heute Nachmittag Beitrag als gelöst makieren, mit der erkenntnis, das es nicht machbar ist

Danke für eure Unterstüzung, denn ich glaub wenn ihr da schon nich weiter wisst geht da wirklich nichts.
Bitte warten ..
Mitglied: 60730
04.10.2011 um 14:16 Uhr
Moinsen,

Bilder sagen mehr als 1.000 Worte...

Vielleicht kann mir ja doch jemand weiterhelfen, glaube es jedoch weniger

Glauben, heisst nicht wissen und auch wenn deine Frage falsch einsortiert ist (Verschieben kannst du das übrigens selber - uns Biber ist heute bestimmt im Mondaymode) - Wenn du hier nach einer Batchlösung fragst, die keine Kaffe kochen soll, kriegst du auch ne funktionierende Antwort.

Wäe ja noch schöner, wenn ausgerechnet wir hier "sowas" nicht praktikantisch lösen könnten....

 reg delete HKCU\Environment /v qwe /f
@bastla - logisch ein Ieh (vom IF) kann alleine nicht stehen, das /i hatte ich einfach vorausgesetzt, aber gut, das deine Augen immer mit dabei sind

Gruß
Bitte warten ..
Mitglied: der-blob
04.10.2011 um 15:23 Uhr
Danke, ich dachte am anfang mit

...BENUTZERvariablen zu ENTFERNEN..

Hatte ich mich klar ausgedrückt. - War wohl nicht der fall :D -

Aber da so eine ähnliche Antwort wie von dir kam, dachte ich nen Bild wär angebracht..



Und das glauben != wissen ist, weiss ich sonst hätt ich geschrieben "es kann mir keiner weiterhelfen" :P

Vielen dank, nachdem ich den lieben Thread verschoben habe, kommt der grüne Haken zum einsatz


Gruß
Bitte warten ..
Ähnliche Inhalte
Windows 7
Netzlaufwerke entfernen sich von selbst
gelöst Frage von SystemDownWindows 75 Kommentare

Hallo Community Ich habe seit einiger Zeit das Problem, dass sich auf einem PC die Netzlaufwerke nach einiger Zeit ...

Entwicklung
Vergleichen und entfernen
Frage von Florian456Entwicklung2 Kommentare

Hallo zusammen, ich bin blutiger Anfänger, im Thema PowerShell und brauche etwas Hilfe. Ich möchte zwei Dateien zeilenweise miteinander ...

Batch & Shell
ERRORS Entfernen
Frage von tefayeBatch & Shell7 Kommentare

Hey ^^ ich spiele gerade bisl mit Batch herrum und wollte fragen wie man die Errors Weg bekommt ;D ...

Windows Server
Benutzer im SBS 2011 entfernen
gelöst Frage von MiStWindows Server10 Kommentare

Hallo, ich habe heute in der SBS-Konsole unter "Netzwerk Computer" div. alte Computer gelöscht. Grund, die einzelnen User haben ...

Neue Wissensbeiträge
Utilities
Teamviewer 14 Verbindungsprobleme mit Proxy
Tipp von PeterleB vor 7 StundenUtilities

Nach dem Umstieg von Version 13 auf 14 wollte sich TV nicht mehr mit dem Netz verbinden, ignorierte offenbar ...

Administrator.de Feedback
Unsere Datenbank wurde umgestellt
Information von Frank vor 11 StundenAdministrator.de Feedback5 Kommentare

Hallo User, ich habe in der Nacht unsere Datenbank umgestellt. D.h. neue Version (MySQL 8) und andere Örtlichkeit. Sollte ...

Sonstige Systeme
Es war einmal ein BeOS - Wer erinnert sich noch?
Information von BassFishFox vor 3 TagenSonstige Systeme6 Kommentare

Hallo, Bin gerade ueber Haiku gestolpert, von dessen Existenz als "Nachfolger des BeOS" ich wusste nur mich nie wirklich ...

Datenschutz

Microsoft und DSGVO - ob das wohl jemals klappt (Probleme beim Datenabfluss für Office Pro Plus)?

Tipp von VGem-e vor 3 TagenDatenschutz5 Kommentare

Servus Kollegen, siehe Aber wer setzt schon MS Office Pro Plus ein? Wie dann der Stand beim "normalen" MS ...

Heiß diskutierte Inhalte
Windows 10
Programm unter Windows 10 automatisch mit administrativen Rechten starten
Frage von GrafmulderWindows 1018 Kommentare

Hallo zusammen! Zur Situation: Ich benutze Windows 10 Pro für Workstations (Build 1803) mit zwei Konten. Einem Administratorkonto und ...

LAN, WAN, Wireless
Empfehlung Powerline Adapter
Frage von AgilolfingerLAN, WAN, Wireless16 Kommentare

Hallo Zusammen, ich brauche eine Empfehlung von euch. Ich möchte in einem privaten Haushalt eine Powerline Lösung einrichten. Allerdings ...

Batch & Shell
Powershell Funktion zum Konvertieren einer Datatable zu einem Array
gelöst Frage von derhoeppiBatch & Shell8 Kommentare

Hallo, ich habe ein Datagridview mit einer Datatable als Quelle. Bei dieser kann Einträge hinzufügen, verändern und löschen. Wenn ...

Windows 10
TeamViewer bzw. AnyDesk - Schwarzes Fenster
Frage von Questionmark93Windows 108 Kommentare

Hallo, hat schon jemand Erfahrung gemacht mit Teamviewer und Anydesk? Mir zeigt es bei einem Bekannten ein schwarzes Fenster ...