Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

PowerShell Variablen-Definition

Frage Entwicklung Batch & Shell

Mitglied: Juergenl

Juergenl (Level 1) - Jetzt verbinden

20.05.2008 um 10:37 Uhr, 8896 Aufrufe

Problem bei der Initialisierung von Array-Variablen - Notation des Namens

Hallo in die Runde,

unter PowerShell 1.0 scheitere ich an folgender Aufgabe, hätte dazu gern Euren Rat:

Aus der folgenden Matrix will ich für jede Zeile eine GLOBALE Variable definieren und initialisieren, deren NAME sich aus den beiden ersten Feldern ableitet:

10;WINXP;Delta200710;D:;M:
11;WINXP;Echo200710;E:;N:
12;WINXP;Fox200710;F:;O:
13;WINXP;GExt200710;G:;G:
20;TRAINER;David200804;D:;S:
21;TRAINER;Esau200804;E:;T:
22;TRAINER;PShell;C:\PS;P:

Die Zeile (in einer FOR-Schleife) besteht aus den Elementen $zlstring[$j][0] bis $zlstring[$j][4], wobei 'j' die Zeilen-Nummer darstellt.

Die GLOBALE Variable mit dem Namen WINX10 (hier erste Zeile) soll wiederum ein Array mit den fünf Elementen 10, WINXP, Delta200710, D: und M: sein.

Um das Vorgehen klar zu gestalten bilde ich den (literalen) NAMEN der Variablen:

$literale = ($zlstring[$j][1]).Substring(0,4).ToString() + ($zlstring[$j][0]).ToString()

( ... in diesem Beispiel heißt sie 'WINX10')

Auch deren Definition ist klar:

set-variable -name "$literale" -scope global (Notation des Variablen-Namens in Anführungszeichen !)

Offenbar ist es aber ein PROBLEM, diesem Array Werte zuzuweisen:

1. Versuch:

${"$literale"} = $zlstring[$j][1], $zlstring[$j][0], zlstring[$j][2], $zlstring[$j][3], $zlstring[$j][4]

Dieser Befehl funktioniert im Script nur scheinbar, d.h. zunächst ohne Fehlermeldung. Aber der Erfolg bleibt aus: Nach Ende des Scripts stehen die GLOBALEN Variablen WINX10 bis WINX13 zur Verfügung, aber sie sind a.) keine Arrays und b.) leer.

2.Versuch

Auch folgende Notation - ergänzt für alle Felder -

${"$literale"[0]} = $zlstring[$j][1]
${"$literale"[1]} = $zlstring[$j][0]

wird zwar nicht als fehlerhaft beanstandet, - bleibt aber auch ohne Erfolg, im übrigen wie oben.

Solange diese Art der Variablen-Definition nicht funktioniert, habe ich mir einen anderen Lösungsweg ausgedacht. Trotzdem wüßte ich gerne, wo das Problem liegt und wie es zu lösen wäre.

Danke im Voraus und beste Grüße

Jürgen
Ähnliche Inhalte
Netzwerkgrundlagen
gelöst Definition von Netzwerkfunktionen ? (23)

Frage von areenk zum Thema Netzwerkgrundlagen ...

Netzwerkgrundlagen
Definition der Sicherheitsrechtlinien (10)

Frage von Daoudi1973 zum Thema Netzwerkgrundlagen ...

Batch & Shell
gelöst Powershell Variable mit einem Operator versehen (11)

Frage von pixel0815 zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell invoke Command Variablen übergeben (4)

Frage von H41mSh1C0R zum Thema Batch & Shell ...

Neue Wissensbeiträge
Humor (lol)

Wohnt jemand in Belgien und kann nicht mehr ruhig ausschlafen?

(4)

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

Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
Gruppenrichtlinie greift nicht zu! (24)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...

Voice over IP
DeutschlandLAN IP Voice Data M Premium, Erfahrung mit Faxgeräte? (16)

Frage von liquidbase zum Thema Voice over IP ...