Jump to content

MurdocX

Moderators
  • Gesamte Inhalte

    2.738
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von MurdocX

  1. Gute Idee. Das Umzusetzen wird aber nicht 0815 wie bisher. Stürzt das Programm denn ziemlich oft ab?
  2. Es wäre gut, wenn du etwas mehr über deine Ziele schreiben könntest. Was möchtest du damit erreichen?
  3. Zusätzlich kannst du dann mit IP Helper arbeiten.
  4. Um einzelne Objekte zu verarbeiten und nicht die Druckerliste auf einmal zu übergeben, kannst du auf ForEach-Object { } zurückgreifen.
  5. So pauschal kann niemand damit was anfangen.
  6. Es freut mich, dass ich Dir helfen konnte.
  7. Richtig! PS: Falls Ihr den VCenter verwendet, dann würde ich eure wichtigsten VMs einen DC und den VCenter automatisch mit den ESXi-Servern hochfahren lassen.
  8. Kurz und knapp -> Ja. Fahrt auch die komplette Hardware herunter, wenn Ihr schon alle VMs ausschaltet. Beim Hochfahren wird wieder alles initialisiert. Fertig. Erst letztes wieder gemacht.
  9. Ja das tut es. Denn genau das bringt uns einen Schritt weiter. Das würde auch erklären warum wieder fast alles aussortiert wird. Leider gibt es nur "Alles Gut" oder "Fehler", auch in den ExitCodes. Hier können wir also auch nicht ansetzen. Ein Ansatz lässt sich herauslesen, wenn man die Beiden Fehlermeldungen vergleicht. Der Unterschied ist "Couldn't find trailer dictionary". Aussehen würde es dann so: foreach ($FileItem in $FoundPdfList) { $i++ Write-Progress -Activity 'Prüfe gefundene PDF-Dateien' -Status "$i von $($FoundPdfList.Count)" -CurrentOperation $FileItem.Name [string]$FilePath = $FileItem.FullName $retValue = & $PdfInfoToolPath $FilePath 2>&1 if ($retValue | Select-String -Pattern 'find trailer dictionary') { Move-Item -Path $FilePath -Destination $DefectFilesPath } } Jetzt bist du wieder dran.
  10. Das eine hat mit dem Anderen nichts zu tun, bzw. indirekt Ein ExitCode ist etwas anderes wie die normale Ausgabe aus dem Programm. Anscheinend hast du es gar nicht mal selber probiert. Normale Ausgabe: Fehlerhafte Ausgabe: Hier ist das einfache Filtern auf "Error" eine einfache Variante. Was kommt denn raus, wenn du mal eins von den PDFs die verschoben werden händisch ausprobierst?
  11. Leider kann ich zu Unifi wenig sagen. Das ist einfach nicht meine Baustelle. Ich vermute aber, das der Controller schon VLAN kann. Siehe: https://help.ubnt.com/hc/en-us/articles/219654087-UniFi-Using-VLANs-with-UniFi-Wireless-Routing-Switching-Hardware
  12. Steht alles schon geschrieben Zusatz: 1. Netze trennt der Router 2. VLAN-Tagging muss auch der Client können. Hierzu muss Karte, Treiber und Software passen.
  13. In dem du beim Switch die Einstellung "Management VLAN" von 1 auf 2 änderst Vorher aber noch für das VLAN2 eine IP auf dem Switch vergeben.
  14. Nur der Vollständigkeit möchte ich noch auf ein Powershell-Skript verweisen it-explorations | Suchen & Ersetzen von Dateiinhalten – Powershell https://www.it-explorations.de/suchen-ersetzen-powershell/
  15. Das machen die Computer nach jedem Starten selber, außer der schon vorhandene A-Record ist auf eine andere SID eines alten PCs registriert. Um Dir den Weg zu sparen lösche einfach alle und sie werden wieder erstellt
  16. Hallo Fosco, ja genau. So ist es in deinem ursprünglichen Skript drin. Er ließt aus, ob das Programm einen Error bei lesen der PDF ausgibt. Falls ja, also ein Error vorkommt, wird die Datei verschoben. Kommt denn ein Error beim manuellen auslesen vor? Update: Ich hab das Skript nun selber ausgeführt und konnte mein Problem erkennen. $FileItem ist ein Objekt und kein String. Daher hat er keinen Pfad gefunden und jede Datei mit ein "Error" versehen. Ersetze den unteren Teil bitte mit dem von mir hier geposteten und teste erneut: foreach ($FileItem in $FoundPdfList) { $i++ Write-Progress -Activity 'Prüfe gefundene PDF-Dateien' -Status "$i von $($FoundPdfList.Count)" [string]$FilePath = $FileItem.FullName $retValue = & $PdfInfoToolPath $FilePath 2>&1 if ($retValue | Select-String -Pattern Error) { Move-Item -Path $FilePath -Destination $DefectFilesPath } } Auch ich bin nicht fehlerfrei. Besonders wenn ich es selber nicht teste. Der Code ist nun getestet und für gut befunden.
  17. Hallo Fosco, die Ausgabe ist nicht wie von mir vorher vermutet in der Variable gespeichert, damit kann sie auch nicht ausgewertet werden. Das hab ich wieder zur vorherigen Variante abgeändert. Der Vollständigkeit hab ich es nochmal komplett für Dich gepostet. #requires -Version 3.0 # Initialisiere und bereite die Umgebung vor [string]$DefectFilesPath = 'N:\CutFolders' [string]$LocationToAnalyse = (Get-Location).Path [string]$PdfInfoToolPath = "$env:USERPROFILE\Downloads\xpdf-tools-win-4.02\xpdf-tools-win-4.02\bin64\pdfinfo.exe" if ((Test-Path -Path $DefectFilesPath) -eq $false) { New-Item -ItemType Directory -Force -Path $DefectFilesPath } # Der erste Teil des Codes sucht nach den Ordnern mit META-INF oder OEPS im Namen und verschiebt sie in den CutFolders Ordner $FoundFolderList = Get-ChildItem -Path $LocationToAnalyse -Recurse -Directory foreach ($FolderItem in $FoundFolderList) { If(($FolderItem.Name -like '*META-INF*') -or ($FolderItem.Name -like '*OEPS*')) { Move-Item -Path $FolderItem.FullName -Destination $DefectFilesPath } } # Dieser Teil überprüft die verbliebenen PDFs auf Funktion und entfernt die defekten $FoundPdfList = Get-ChildItem -Path $LocationToAnalyse -Filter *.pdf -Recurse [int]$i = 0 foreach ($FileItem in $FoundPdfList) { $i++ Write-Progress -Activity 'Prüfe gefundene PDF-Dateien' -Status "$i von $($FoundFolderList.Count)" $retValue = & $PdfInfoToolPath $FileItem 2>&1 if ($retValue | Select-String -Pattern Error) { Move-Item -Path $FileItem.FullName -Destination $DefectFilesPath } }
  18. Erfahrung + die offensichtliche Meldung. Ich hab den gleichen Fehler bei einer HP Workstation schon mal behoben.
  19. Ja das ist alles unangenehm, löst dein Problem aber nicht Der Fehler ist nun mal da. Wäre denn für Dich eine Möglichkeit das über die Gruppenrichtlinien nachzuliefern?
  20. Der Ursprungsfehler 'Non-System disk or disk error. Replace and strike any key when ready' ist sicher kein Treiberproblem, sondern ein Partitions und MBR Problem.
  21. Mach das am besten vorher. https://support.hp.com/gb-en/document/c00810279
  22. AFAIR geht das ohne Probleme. Ansonsten muss der Bootrecord nochmal angepasst werden. Kein Ding
  23. Hallo Fosco, ich habe mir die Mühe gemacht für Dich zu recherchieren. Das Problem das du hast ist, dass dir die "pdfinfo.exe" fehlt. Das ergeht aus der Powershell Meldung. Diese ließt die PDF-Datei aus und wirft im Fehlerfall einen Fehler aus. Dieser wird abgefangen und die Datei verschoben. Die PDFInfo.exe bekommst du hier unter der Rubrik: Download the Xpdf command line tools: Windows 32/64-bit https://www.xpdfreader.com/download.html Ich habe gerade Lust und Laune gehabt Dir das Skript zu verbessern. Einige unnütze Aufrufe entfernt, Variablennamen treffender benannt und die Lesbarkeit/Interpretierbarkeit deutlich erhöht. Das Skript selber habe ich nicht getestet, sollte aber funktionieren. $PdfInfoToolPath musst du so anpassen, das sie auf die pdfinfo.exe zeigt. $LocationToAnalyse ist der Pfad der nach den Dateien/Ordnern durchsucht wird. Das Skript muss in diesem Pfad selber liegen oder der Pfad angepasst werden. Das ist übrigens in deinem Ursprungsskript auch so. #requires -Version 3.0 # Initialisiere und bereite die Umgebung vor [string]$DefectFilesPath = 'N:\CutFolders' [string]$LocationToAnalyse = (Get-Location).Path [string]$PdfInfoToolPath = "$env:USERPROFILE\Downloads\xpdf-tools-win-4.02\xpdf-tools-win-4.02\bin64\pdfinfo.exe" if ((Test-Path -Path $DefectFilesPath) -eq $false) { New-Item -ItemType Directory -Force -Path $DefectFilesPath } # Der erste Teil des Codes sucht nach den Ordnern mit META-INF oder OEPS im Namen und verschiebt sie in den CutFolders Ordner $FoundFolderList = Get-ChildItem -Path $LocationToAnalyse -Recurse -Directory foreach ($FolderItem in $FoundFolderList) { If(($FolderItem.Name -like '*META-INF*') -or ($FolderItem.Name -like '*OEPS*')) { Move-Item -Path $FolderItem.FullName -Destination $DefectFilesPath } } # Dieser Teil überprüft die verbliebenen PDFs auf Funktion und entfernt die defekten $FoundPdfList = Get-ChildItem -Path $LocationToAnalyse -Filter *.pdf -Recurse [int]$i = 0 foreach ($FileItem in $FoundPdfList) { $i++ Write-Progress -Activity 'Prüfe gefundene PDF-Dateien' -Status "$i von $($FoundFolderList.Count)" $retValue = Start-Process -FilePath $PdfInfoToolPath -ArgumentList $FileItem -NoNewWindow -PassThru if ($retValue | Select-String -Pattern Error) { Move-Item -Path $FileItem.FullName -Destination $DefectFilesPath } }
  24. Das Tool benötigt übrigens beide Geräte online. Falls du 2 NVMe´s hast, brauchst du noch einen Adapter. Ganz ehrlich.. Die würde ich einfach vorher entfernen.
×
×
  • Neu erstellen...