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 Ausgabe in CSV

Frage Entwicklung

Mitglied: vcxy80

vcxy80 (Level 1) - Jetzt verbinden

06.07.2009, aktualisiert 12:44 Uhr, 12958 Aufrufe, 7 Kommentare

Halli Hallo,

ich versuche ein Script zu basteln, welches für alle Server in einem Textfile der OS ermittelt und anschliessend das Ergebnis in einem CSV-File ausgibt. Folgendes hab ich erstellt:


function get-os ($file) {
$names = get-content $file
foreach ($name in $names) {
$name
gmwi win32_OperatingSystem -prop Caption -comp $name
}
}

get-os C:\srvnames.txt ¦ export-csv "C:\srv-os.txt


Leider erhalte ich kein Textfile mit dem Ergebnis - habt Ihr ne Idee was ich da falsch mache?

Danke + Gruss
Mitglied: TsukiSan
06.07.2009 um 14:21 Uhr
Hallo,

lösche bitte mal das Anführungszeichen vor C:\srv-os.txt
01.
get-os C:\srvnames.txt ¦ export-csv C:\srv-os.txt

Gruß
Tsuki
Bitte warten ..
Mitglied: vcxy80
06.07.2009 um 14:48 Uhr
Grüss Dich,

also so oder:

function get-os ($file) {
$names = get-content $file
foreach ($name in $names) {
$name
gwmi win32_OperatingSystem -prop Caption -comp $name
}
}

$a = get-os
$a ¦ select-object ¦ export-csv -path C:\srv-os.txt


passiert leider nichts...

Wenn ichs manuell in PS-Windows tippsle passiert folgendes:

PS C:\Documents and Settings\userID> function get-os ($file) {
$names = get-content $file
foreach ($name in $names) {
$name
gwmi win32_OperatingSystem -prop Caption -comp $name
}
}
PS C:\Documents and Settings\userID> $a = get-os
Get-Content : Cannot bind argument to parameter 'Path' because it is null.
At line:2 char:25

$names = get-content <<<< $file

Get-WmiObject : Cannot validate argument because it is null.
At line:5 char:55

gwmi win32_OperatingSystem -prop Caption -comp <<<< $name

PS C:\Documents and Settings\userID>
Bitte warten ..
Mitglied: TsukiSan
06.07.2009 um 15:26 Uhr
Also,Schritt für Schritt.

Welchen Pfad hast du "$File" zugewiesen?
Beispiel:
$File = Get-Content "C:\Test.log"
Da scheint mir in deiner Fehlerausgabe das Problem zu liegen, das Powershell NULL ausgibt. Bitte mal prüfen!
Den Rest schaue ich mal weiter.

Gruß
Tsuki
Ps.: In der Zwischenzeit mal was zum testen
01.
$Proz = get-process 
02.
$Proz | select-object Name,Path,Company | Export-csv -path C:\Prozesse.csv
Bitte warten ..
Mitglied: vcxy80
07.07.2009 um 09:14 Uhr
....aaaaaaaaaaaaaalso ich hatte wohl einen Anflug von Blindheit hatte das falsche Zeichen fürs pipen verwendet - lol // damit hat sich mein Grundproblem erledigt, aber eine Frage hab ich noch, nochmal zum Code:

  1. Also hier die Funktion

PS C:\Documents and Settings\userID> function get-os ($file) {
$names = get-content $file
foreach ($name in $names) {
$name
gwmi win32_operatingsystem -prop caption -comp $name
}
}

  1. Dann der Aufruf der Funktion mit der Angabe des Sourcefiles für $file

get-os C:\srvnames.txt

  1. Soweit funkt das, dann will ich eben den Inhalt in ein CSV-File exportieren

get-os C:\srvnames.txt | Select-Object Caption | export-csv C:\export.txt

  1. Aber natürlich bringt mir "Caption" allein wenig - ich sollte noch den Servernamen dazu anzeigen lassen - blos wie funkt das?

Das geht nicht:

get-os C:\srvnames.txt | Select-Object Name,Caption | export-csv C:\export.txt

Bzw. das auch nicht:

get-os C:\srvnames.txt | Select-Object $Name,Caption | export-csv C:\export.txt

Danke vielmals für die Hilfe!
Bitte warten ..
Mitglied: TsukiSan
07.07.2009 um 10:35 Uhr
Hi,

ersetze mal das KOMMA durch ein Leerzeichen:
01.
get-os C:\srvnames.txt | Select-Object Name Caption | export-csv C:\export.txt
kann jetzt auf die Schnelle nicht testen, aber in meinem Schnipsel habe ich die "Überschriften" für das CSV-File auch nicht durch Komma vom "........object Name,Patth,Company" getrennt.

Gruß
Tsuki

Ps.: ich bin jetzt aber auch blind. Du mlchtest doch anstelle "Caption" den Servernamen haben
probier mal "SET-Caption = XXXX"
ich muss wech. Sorry!
Bitte warten ..
Mitglied: TsukiSan
07.07.2009 um 10:45 Uhr
...also, noch schnell einen Kaffee
01.
 
02.
$Caption = "Servername" ' den aus der Datei holen! 
03.
get-os C:\srvnames.txt | Select-Object $Caption | export-csv C:\export.txt 
04.
 
dann müßte "Caption auch beschrieben sein.

Probier mal

Nun aber wirklich wech.
Bis später
Tsuki
Bitte warten ..
Mitglied: vcxy80
07.07.2009 um 12:31 Uhr
Hoi - hat sich bereits erledigt. Hatte zuvor Probleme hier die Lösung zu posten bzw. war schon alles richtig lag an mir - ich Vollnase hatte das falsche zeichen zum pipen verwendet (kommt davon wenn man ein ungewohntes tastaturlayout einsetzt) - also so funkt es (aber vielen Dank für Deine Unterstützung):

function get-os ($file) {
$names = get-content $file
foreach ($name in $names) {
$name
gwmi win32_OperatingSystem -prop Caption,CSName -comp $name
}
}


get-os C:\srvnames.txt | Select-Object CSName,Caption | export-csv C:\export.csv
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Powershell - Ausgabe gruppieren - gleichzeitig Werte in anderer Spalte addieren (9)

Frage von Affkopf89 zum Thema Batch & Shell ...

Batch & Shell
Powershell Workflow, CSV Stapelverarbeitung Problem (6)

Frage von Rippchen zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell - Formatierung der Ausgabe (2)

Frage von Scroller zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Zusammenarbeit
Als Administrator im Großraumbüro (29)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (22)

Frage von Driphex zum Thema Exchange Server ...

Hardware
Laptop ins Salzwasser gefallen (18)

Frage von Marcel94 zum Thema Hardware ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (12)

Frage von thomasreischer zum Thema Hardware ...