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
GELÖST

Powershell Ausgabe in CSV

Frage Entwicklung

Mitglied: vcxy80

vcxy80 (Level 1) - Jetzt verbinden

06.07.2009, aktualisiert 12:44 Uhr, 13725 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 ..
Ähnliche Inhalte
Batch & Shell
CSV zu XML Probleme mit PowerShell (7)

Frage von comtel zum Thema Batch & Shell ...

Microsoft
gelöst PowerShell: CSV in CSV kopieren (3)

Frage von Pludan zum Thema Microsoft ...

Batch & Shell
gelöst Powershell xml zu csv (2)

Frage von GeoSem zum Thema Batch & Shell ...

Batch & Shell
XML in CSV bat batch powershell (9)

Frage von nolle99 zum Thema Batch & Shell ...

Neue Wissensbeiträge
LAN, WAN, Wireless

Schwachstelle im WPA2 Protokoll veröffentlicht

(3)

Information von colinardo zum Thema LAN, WAN, Wireless ...

Heiß diskutierte Inhalte
Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (21)

Frage von Syosse zum Thema Windows Server ...

Windows 7
gelöst Windows 7 Anmeldedomäne festlegen (13)

Frage von flotaut zum Thema Windows 7 ...

Windows Server
gelöst WSUS Updates auf iSCSI speichern (10)

Frage von lcer00 zum Thema Windows Server ...