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 - Auslesen von Datei-Informationen auf einem Vordefinierten Pfad

Frage Entwicklung

Mitglied: Silver1986

Silver1986 (Level 1) - Jetzt verbinden

17.02.2011 um 11:20 Uhr, 23550 Aufrufe, 2 Kommentare

Hallo Administratoren, befasse mich arbeitsbedingt seit kurzem mit Powershell und wurde von meinem Anleiter vor ein, für mich, schwer lösbares Problem gestellt und bitte um Mithilfe.

Es soll einem Powershell Script auf einem beliebigen Rechner in einer Domäne gestartet werden.
Dieses Script soll dann nach einem bestimmten Dateipfad fragen welcher manuell eingegeben wird z.B.: c:\Programe Files\xxx\
nun soll dieses Script in einer bereits vorhandenen TXT.Datei in der eine Liste von IP Adressen steht (optional auch Rechnernamen) auf jedes dieser Rechner zugreifen und für alle, in dem vorher manuell definierten Pfad, Dateien den Namen, das letzte Änderungsdatum und die Dateiversion ausgeben und in einer TXT- u. CSV Datei speichern. Das für alle Rechner aus der IP Liste.

Könnt ihr mir da weiter helfen?
Mitglied: Silver1986
22.02.2011 um 10:31 Uhr
hab mal ein bisschen recharchiert und folgendes script zum auslesen der Dateiversion gefunden:
01.
#Das COM Objekt "Shell.Application" hat die Funktionaliät die wir brauchen 
02.
$shellObject = New-Object -Com Shell.Application 
03.
 
04.
#Die Datei, von der wir die Informationen haben wollen als PS Object 
05.
$fileItem = Get-Item "C:\Program Files\7-Zip\7z.exe" 
06.
 
07.
#Auslesen des Ordnernames und Dateinames von der Datei 
08.
$directoryName = $fileItem.DirectoryName 
09.
$filename = $fileItem.Name 
10.
 
11.
#Erstellen des Orderobjektes und des Dateiobjekts als COM Objekt 
12.
$folderObject = $shellObject.NameSpace($directoryName) 
13.
$item = $folderObject.ParseName($filename) 
14.
 
15.
#Auslesen der Eigenschaft der Datei mit der ID 38, das ist die Dateiversion 
16.
$folderObject.GetDetailsOf($item, 38)
funktioniert soweit einwandfrei nur das es mir die Versionsnummer nicht ausgibt. Hab ich ein Fehler drin? Wie kann ich dieses Script auf mehrere Datein anwenden?
Bitte warten ..
Mitglied: Silver1986
23.02.2011 um 09:20 Uhr
So nun hab ich es soweit geschaft, dass er es für mehrere Daten anwendet. Nun hab ich das Problem, dass er die Version der daten nicht ausgibt und immer noch kein Plan habe, wie ich nach dem eingegebenen Pfad auf mehreren Rechnern in einer Domäne suchen lassen kann.

01.
$path = read-host "Bitte Pfad eingeben: "                          
02.
ls $path -Recurse -force | select-object fullname | out-file c:\temp\search.txt -width 50  
03.
 
04.
$filepath = gc c:\temp\search.txt                                     
05.
 
06.
foreach  ($file in $filepath)                                                     
07.
			{				 
08.
			 $shellObject = New-Object -Com Shell.Application                      
09.
 
10.
             $fileItem = Get-Item ($file)                                          
11.
 
12.
             $directoryName = $fileItem.DirectoryName                             
13.
             $filename = $fileItem.Name 
14.
 
15.
             $folderObject = $shellObject.NameSpace($directoryName)                 
16.
             $item = $folderObject.ParseName($filename) 
17.
 
18.
             write-host "Name: "$folderObject.GetDetailsOf($item, 0)                
19.
             write-host "Typ: "$folderObject.GetDetailsOf($item, 2)                
20.
             write-host "Version: "$folderObject.GetDetailsOf($item, 38) 
21.
             write-host "Letzte Änderung: "$folderObject.GetDetailsOf($item, 3)     
22.
             write-host "-----------------"                          
23.
24.
             break;
So sieht die Ausgabe zb. auf dem Verzeichnis C:\temp\ aus:

Name: anzahl_elt_gruppe
Typ: Microsoft Office Excel-CSV
Version:
Letzte Änderung: 15.03.2010 16:04
Name: GRC Gruppen
Typ: Textdokument
Version:
Letzte Änderung: 15.03.2010 16:02
Name: Mappe1
Typ: Microsoft Office Excel-Arbeitsblatt
Version:
Letzte Änderung: 15.03.2010 16:11
Name: search
Typ: Microsoft Office Excel-CSV
Version:
Letzte Änderung: 22.02.2011 15:04
Name: search
Typ: Textdokument
Version:
Letzte Änderung: 23.02.2011 09:14
Name: search
Typ: Textdokument
Version:
Letzte Änderung: 23.02.2011 09:14
Name: search
Typ: Textdokument
Version:
Letzte Änderung: 23.02.2011 09:14
need Help ^^
Bitte warten ..
Ähnliche Inhalte
Installation
gelöst Mit Powershell in einer Datei eine Zeile auslesen (6)

Frage von Bommi1961 zum Thema Installation ...

Batch & Shell
gelöst Powershell Ordnername auslesen und verwenden (3)

Frage von zamsi7 zum Thema Batch & Shell ...

Batch & Shell
gelöst Problem Auslesen einer Internetseite mit Powershell (11)

Frage von c20082005 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
gelöst Raid-Controller (Areca) Datenverlust trotz R5 (16)

Frage von sebastian2608 zum Thema Festplatten, SSD, Raid ...

Server-Hardware
HP ProLiant DL380 G7, POST Error: 1785-Drive Array not Configured (10)

Frage von Paderman zum Thema Server-Hardware ...

Server-Hardware
Starker PC zum Virtualisieren (10)

Frage von canlot zum Thema Server-Hardware ...

Microsoft Office
gelöst Office 365 Pro Domäne einrichten OHNE Webseite (9)

Frage von thklemm zum Thema Microsoft Office ...