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, 12819 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
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

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

Frage von Rippchen zum Thema Batch & Shell ...

Windows Server
Powershell Import-CSV Komma ausschreiben plus New-ADUser Pipen (3)

Frage von Freakazoid89 zum Thema Windows Server ...

Batch & Shell
gelöst Mit PowerShell per CSV-File Ordner erstellen (19)

Frage von windelterrorist zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...