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

Frage Entwicklung Batch & Shell

GELÖST

Powershell Hashtable - Relativ sinnvoll eingesetzt?

Mitglied: Marabunta

Marabunta (Level 1) - Jetzt verbinden

22.01.2015, aktualisiert 23.01.2015, 2269 Aufrufe, 3 Kommentare

Ich hab das mal geschrieben um für zukünftige Einsätze die Powershell Hastables einsetzen zu können.
Habt ihr da evtl. bessere Wege?
Dabei geht es nicht um Datenerfassung wie im Beispiel, sondern darum ob die Methode die Hashtable zu füllen gut ist oder nicht.
01.
$users="Hans","Peter","Gustav" 
02.
$Datenerfassung=@{Benutzer="$users";Password="Geben Sie Ihr Kennwort ein.";Username="Geben Sie Ihren Benutzernamen ein.";ID="Geben Sie Ihre ID ein."} 
03.
foreach($user in $users){ 
04.
$ID_User="ID_"+"$User" 
05.
$Username_User="Username_"+"$User" 
06.
$Password_User="Password_"+"$User" 
07.
$Datenerfassung.$ID_User=Read-Host ""$Datenerfassung.ID 
08.
$Datenerfassung.$Username_User=Read-Host ""$Datenerfassung.Username 
09.
$Datenerfassung.$Password_User=Read-Host ""$Datenerfassung.Password 
10.
11.
$datenerfassung.getenumerator() |sort-object -Property key 
12.
 
13.
Name                           Value 
14.
----                           ----- 
15.
Benutzer                       Hans Peter Gustav                               
16.
ID                             Geben Sie Ihre ID ein. 
17.
ID_Gustav                      IDvonGustav 
18.
ID_Hans                        IDvonHans 
19.
ID_Peter                       IDvonPeter 
20.
Password                       Geben Sie Ihr Kennwort ein. 
21.
Password_Gustav                PasswortvonGustav 
22.
Password_Hans                  PasswortvonHans 
23.
Password_Peter                 PasswortvonPeter 
24.
Username                       Geben Sie Ihren Benutzernamen ein. 
25.
Username_Gustav                BenutzernamevonGustav 
26.
Username_Hans                  BenutzernamevonHans 
27.
Username_Peter                 BenutzernamevonPeter
Mitglied: colinardo
22.01.2015, aktualisiert um 16:09 Uhr
Hallo marabunta,
eher suboptimal... Wenn du flexibel bleiben willst mach das ganze doch mit einem PSObject, das kannst du später nach Bedarf auch um weitere Daten und Spalten erweitern. Hashtables sind eher nur was für einen Key mit einem Wert, mehr nicht.

Beispiel mit Custom Objects
01.
# Array erstellen das unsere Objects(Zeilen) zusammenfasst 
02.
$allData = @() 
03.
 
04.
# PSCustomObject dem Array hinzufügen / Kannst du natürlich auch mit einer Schleife nutzen 
05.
$allData += New-Object PSObject -Property @{Benutzer="BenutzerA";ID="ID_A";Password='Geheim'} 
06.
$allData += New-Object PSObject -Property @{Benutzer="BenutzerB";ID="ID_B";Password='Geheim'} 
07.
 
08.
$allData
Der Vorteil mit einem Custom-Object ist z.B. das es sich sehr einfach z.B direkt an das CMDLet export-csv pipen lässt wenn man mal einen Export benötigt. Und nicht nur das, Objekte sind einfach besser zu handhaben und flexibel erweiterbar.

Hashtables haben auch Ihre Berechtigung, es kommt aber eben auf den Verwendungszweck an.

Grüße Uwe
Bitte warten ..
Mitglied: Marabunta
22.01.2015, aktualisiert um 16:19 Uhr
Ich dachte schon mit Hashtables hätte ich in der Kategorie Array schon das mächtigste in PS gefunden.
Naja umso besser...thx
Bitte warten ..
Mitglied: colinardo
LÖSUNG 22.01.2015, aktualisiert 23.01.2015
Zitat von Marabunta:

Ich dachte schon mit Hashtables hätte ich in der Kategorie Array schon das mächtigste in PS gefunden.
Naja umso besser...thx
Schau dir mal das NET-Framework an, dann weist du was dir entgeht
Daraus lassen sich nämlich fast alle Klassen auch in Powershell nutzen....denn Powershell basiert auf .NET
.NET Framework-Klassenbibliothek
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Powershell Hashtable
gelöst Frage von MarabuntaBatch & Shell2 Kommentare

Warum steht Neuer Wert an zweiter und nicht an dritter Stelle? Ich wollte mir auch die Inhalte wie ein ...

Batch & Shell
Powershell Hashtable to Übersichtliche Darstellung
gelöst Frage von MarabuntaBatch & Shell2 Kommentare

Ich frage Remote diverse Rechner ab und speichere das Ergebnis aller Rechner in $LoggedOn, die Variable liefert allerdings jeder ...

Batch & Shell
PowerShell Daten aus Array mit Daten aus Hashtable verknüpfen
gelöst Frage von derhoeppiBatch & Shell2 Kommentare

Hallo, ich habe ein Array mit Informationen. In diesem Array gibt es einen nummerischen Wert. Weil ich mit dem ...

Batch & Shell
PowerShell String zerlegen in Array, DataTable, Hashtable speichern
gelöst Frage von derhoeppiBatch & Shell7 Kommentare

Guten Morgen, leider habe wieder ein Thema beim zerlegen eines Strings. Folgendes Problem: Die Rückgabe eines Admintools liefert mir ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...

Batch & Shell
Shell-Skript - Syntax error: Unterminated quoted string
Frage von newit1Batch & Shell13 Kommentare

Hallo Ich schreibe ein Skript das eine CSV-Datei in eine mySQL Datenbank schieben soll. Bekomme nach start des Skrips ...

E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Entwicklung
VBS: alle PDF-Dateien in einem Ordner gleichzeitig öffnen
gelöst Frage von JuweeeEntwicklung9 Kommentare

Hallo, ich habe in deiner Ordnerstruktur (.\Tagesberichte\xx.18\) mehrere dynamische PDF-Formulare (mit LCD erstellt). Die Berichtsformulare sind im Layout alle ...