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

Hashtable erstellen

Frage Entwicklung Batch & Shell

Mitglied: mguenth83

mguenth83 (Level 1) - Jetzt verbinden

15.08.2014 um 10:20 Uhr, 803 Aufrufe, 7 Kommentare

Hi,
ich wollte kurz fragen ob jemand weiss wie man in Powershell ein Hashtable erzeugt und diese nach und nach füllt. Damit dann zum schluss ein PS Object erstellt werden kann.

Ich habe nämlich eine Forechschleife und die Daten die darauf resultieren sollen der Hashtabelle angefügt werden damit ich später ein psobject draus machen kann.


So sollte es später aussehen:

Zeile Druckername
------------------
1 2

Hinzufügen in der foreach schleife

der wert 2 und 3

Gruß
Matze
Mitglied: colinardo
15.08.2014, aktualisiert um 10:40 Uhr
01.
$ht = @{} 
02.
1..10 | %{$ht[$_] = "BlaBla"} 
03.
$ht
oder direkt ein Objekt erzeugen und es in einem Array hinzufügen, das entspricht vermutlich eher deinen Vorstellungen:
01.
$arr = @() 
02.
for ($i = 1; $i -le 10; $i++){ 
03.
    $arr += new-Object PSObject -Property @{"Zeile"=$i;"Druckername"="BlaBla"} 
04.
05.
$arr
Working with Hash Tables

Grüße Uwe
Bitte warten ..
Mitglied: mguenth83
15.08.2014 um 11:09 Uhr
Hi Uwe...
super jetzzt weiss ich wieder mehr...

öhm habe nur das Problem das ich jetzt noch das den gerade verarbeitendes Object angeben muss...

hier mal der Code
01.
$Location = Read-Host Servername: 
02.
$Server = "$Location"+"W8-S-DC01" 
03.
 
04.
$Session = New-PSSession -ComputerName $Server 
05.
#Enter-PSSession -ComputerName $Server 
06.
Import-PSSession -Session $Session -CommandName "Restart-Service" -Prefix Remote | Out-Null 
07.
 
08.
#Druckernamen mit Jobs 
09.
$Printers = ((Get-WmiObject -ComputerName $Server -Class win32_PrintJob).Name).Split(",") | where {$_ -like "$Location*"} 
10.
$printers_Count = $Printers.Count 
11.
 
12.
#Tabelle erzeugen 
13.
$arr = @() 
14.
 
15.
#Menue erzeugen 
16.
for ($i = 1; $i -le $printers_Count; $i++){ 
17.
    $arr += new-Object PSObject -Property @{"Zeile"=$i;"Druckername"="$Printer"} 
18.
19.
 
20.
$arr 
21.
 
22.
#Spooler neustarten 
23.
#Get-RemoteRestart-Service Spooler 
24.
 
25.
Remove-PSSession -ComputerName $Server 
26.
 
Bitte warten ..
Mitglied: mguenth83
15.08.2014 um 11:16 Uhr
Habs selber...
hab die Zeile hinzugefügt bei Menue erzeugen..
$Printer = ($Printers)[$i-1]
Bitte warten ..
Mitglied: colinardo
15.08.2014, aktualisiert 16.08.2014
würde Zeile 9 so schreiben:
$Printers = Get-WmiObject -ComputerName $Server -Class win32_PrintJob | ?{$_.Name -like "*$Location*"} 
und Zeile 17 dann
$arr += new-Object PSObject -Property @{"Zeile"=$i;"Druckername"=$Printers[$i-1].Name}
Grüße Uwe

Objekte solange Objekte sein lassen wie möglich lautet die Devise!
Bitte warten ..
Mitglied: mguenth83
15.08.2014 um 11:42 Uhr
Hi,
super leider habe ich noch ein lettes Problem...da stand ich schon vor Wochen davor uns hab nur net Notlösung gehabt...

und zwar ist der Output irgendwie ganz nach rechts geschoben in der Console....es sieht so aus als wenn die Tabelle zu viele Leerzeichen enhält, besonders die Spalte "Zeile"

Kann man die Größen der Spalten irgendwie noch anpassen?

Danke und Merci für die Hilfe
Bitte warten ..
Mitglied: colinardo
15.08.2014 um 11:47 Uhr
Zitat von mguenth83:
Kann man die Größen der Spalten irgendwie noch anpassen?
$arr | ft -AutoSize
Bitte warten ..
Mitglied: colinardo
16.08.2014 um 13:04 Uhr
Wenns das dann war, den Beitrag bitte noch auf gelöst setzen. Merci.
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 Hashtable - Relativ sinnvoll eingesetzt?
gelöst Frage von MarabuntaBatch & Shell3 Kommentare

Ich hab das mal geschrieben um für zukünftige Einsätze die Powershell Hastables einsetzen zu können. Habt ihr da evtl. ...

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 ...

Neue Wissensbeiträge
Verschlüsselung & Zertifikate

Die Hölle friert ein weiteres Stück zu: Microsoft integriert OpenSSH in Windows

Information von ticuta1 vor 2 StundenVerschlüsselung & Zertifikate

Interessant SSH-Kommando in CMD.exe und PowerShell

Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 1 TagApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 1 TagWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 1 TagWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Heiß diskutierte Inhalte
Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server19 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Kein Bild mit nur einer bestimmten Grafikkarten - Mainboard Konfiguration
gelöst Frage von bestelittHardware18 Kommentare

Hallo zusammen, ich hatte schon einmal eine ähnliche Frage gestellt. Damals hatte ich genau das gleiche Problem. Allerdings lies ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement17 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...