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

Powershell-Teilscript funktioniert unter Windows Server 2012 nicht mehr

Frage Entwicklung Batch & Shell

Mitglied: Dani

Dani (Level 5) - Jetzt verbinden

06.08.2013 um 11:21 Uhr, 3010 Aufrufe, 12 Kommentare

Hallo zusammen,
es ist eigentlich relativ einfach. Es geht um folgenden Schnipsel:
01.
$givenname = $givenname -replace ("ä", "ae") -replace ("ö", "oe") -replace ("ü", "ue") -replace ("ß", "ss") 
02.
$surname = $surname -replace ("ä", "ae") -replace ("ö", "oe") -replace ("ü", "ue") -replace ("ß", "ss")
Dieser Teil funktioniert unter Windows Server 2008R2 problemlos. Unter Windows Server 2012 widerrum nicht...

Hier die Powershell-Versionen.

Windows Server 2008R2:
PS C:\Users\Administrator> $host.version

Major Minor Build Revision
----- ----- --------
2 0 -1 -1


Windows Server 2012:
PS C:\Users\Administrator\Desktop> $host.version

Major Minor Build Revision
----- ----- --------
3 0 -1 -1

Bisher haben wir das Ganze bei uns mit einem Hashtable verarbeitet. Die obengenannte Lösung wäre natürlich übersichtlicher und einfacher. Stammt aus diesem Beitrag. Hat jemand das selbe Problem beobachtet?


Grüße,
Dani
Mitglied: colinardo
06.08.2013, aktualisiert um 11:30 Uhr
Hallo Dani,
probiers mal mit:
01.
$givenname = $givenname.replace("ä", "ae").replace("ö", "oe").replace("ü", "ue").replace("ß", "ss") 
02.
$surname = $surname.replace("ä", "ae").replace("ö", "oe").replace("ü", "ue").replace("ß", "ss")
müsste eigentlich funktionieren, werde es aber gleich noch an einem Server 2012 testen.

--edit-- also hier laufen beide Versionen auf einem Server 2012

Grüße Uwe
Bitte warten ..
Mitglied: Dani
06.08.2013 um 11:29 Uhr
Hi Uwe,
Danke für deine Antwort. Es scheint folgende Meldung:
01.
In C:\test.ps1:81 Zeichen:93 
02.
+ ...  "ue").replace ("ÃY", "ss") 
03.
+                    ~ 
04.
Unerwartetes Token "(" in Ausdruck oder Anweisung. 
05.
In C:\test.ps1:82 Zeichen:89 
06.
+ ...  "ue").replace ("ÃY", "ss") 
07.
+                    ~ 
08.
Unerwartetes Token "(" in Ausdruck oder Anweisung. 
09.
    + CategoryInfo          : ParserError: (:) [], ParseException 
10.
    + FullyQualifiedErrorId : UnexpectedToken
Grüße,
Dani

P.S. Seltsame Gänsefüßchen hast du im Code...
Bitte warten ..
Mitglied: Belloci
06.08.2013 um 11:33 Uhr
Dani,

darf ich fragen, welche Endung das Skript hat?!

*.ps1?
Bitte warten ..
Mitglied: colinardo
06.08.2013, aktualisiert um 11:36 Uhr
Zitat von Dani:
Hi Uwe,
Danke für deine Antwort. Es scheint folgende Meldung:
01.
> In C:\test.ps1:81 Zeichen:93 
02.
> + ...  "ue").replace ("ÃY", "ss") 
03.
> +                    ~ 
04.
> Unerwartetes Token "(" in Ausdruck oder Anweisung. 
05.
> In C:\test.ps1:82 Zeichen:89 
06.
> + ...  "ue").replace ("ÃY", "ss") 
07.
> +                    ~ 
08.
> Unerwartetes Token "(" in Ausdruck oder Anweisung. 
09.
>     + CategoryInfo          : ParserError: (:) [], ParseException 
10.
>     + FullyQualifiedErrorId : UnexpectedToken 
11.
> 
komisch da scheint was mit der Zeichkodierung bei deinem Editor nicht zu stimmen.
hier gehen beide Versionen.
P.S. Seltsame Gänsefüßchen hast du im Code...
sorry korrigiert, kommt vom kopieren des Code aus einer VM...
Bitte warten ..
Mitglied: colinardo
06.08.2013, aktualisiert um 11:37 Uhr
Zitat von Belloci:
Dani,

darf ich fragen, welche Endung das Skript hat?!

*.ps1?
steht oben -> test.ps1
Bitte warten ..
Mitglied: colinardo
06.08.2013, aktualisiert um 11:46 Uhr
@Dani : mach mal die Leerzeichen zwischen "replace" und den Klammern weg, dann gehts!
also
replace("ä","ae")
anstatt
replace ("ä","ae")
Bitte warten ..
Mitglied: Belloci
06.08.2013 um 11:45 Uhr
Sorry, steht im Errorcode...

Na, da bin ich mal gespannt ob das ohne den Leerzeichen funktioniert...

Gruß
Bitte warten ..
Mitglied: Dani
06.08.2013 um 11:52 Uhr
@colinardo
Oh... vor lauter Copy&Paste. Nun erscheint keine Fehlermeldung mehr. Allerdings wird ein "ä" nicht ersetzt. Hast du dein Script auf einem Server 2012 getestet?


Grüße,
Dani
Bitte warten ..
Mitglied: colinardo
06.08.2013, aktualisiert um 11:58 Uhr
Zitat von Dani:
@colinardo
Oh... vor lauter Copy&Paste. Nun erscheint keine Fehlermeldung mehr. Allerdings wird ein "ä" nicht ersetzt.
Hast du dein Script auf einem Server 2012 getestet?
Yip, läuft einwandfrei auf einem Server 2012. Welchen Editor nutzt du um die Scripte zu speichern? Geb den Code mal manuell in die Shell ein dann wirst du sehen das er geht.
Bitte warten ..
Mitglied: Belloci
06.08.2013, aktualisiert um 12:08 Uhr
Hey Dani, Hey Colinardo,

mal zum Anfang bzw. zum Errorcode:

Der Auszug "> + ... "ue").replace ("ÃY", "ss")" und vor allem das "ÃY" sieht für mich so aus, dass die ps1 (im Editor erstellt?) im falschen Format gespeichert wurde.

Diese werden ja im Standard im ANSI Format gespeichert. Stellst du das aber auf UNICODE ein, dann sollte das auch laufen.

Hatte damit immer erhebliche Probleme bei Massenimporten per LDIFDE bzw. CSVDE...

Dani, kannst du da mal schauen ob das im UNICODE Format funktioniert.

Danke
Bitte warten ..
Mitglied: Dani
06.08.2013, aktualisiert um 12:56 Uhr
Wir nutzen Notepad++... ich habe es eben auch nochmals neuabgespeichert.
Manuell funktioniert es problemlos.

Es war UTF-8 ohne BOM eingestellt. Nach der Umstellung auf UTF8 läuft es problemlos.


Grüße,
Dani
Bitte warten ..
Mitglied: Belloci
06.08.2013 um 12:59 Uhr
alles klar, danke für die Rückmeldung...
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Windows Server
gelöst Windows Server 2012 R2 Ordnerfreigabe funktioniert plötzlich nicht mehr (7)

Frage von it2016 zum Thema Windows Server ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...

Windows Server
gelöst Windows Server 2012 mit Fritzbox per VPN verbinden (13)

Frage von StefanT81 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...