Jump to content

BOfH_666

Expert Member
  • Gesamte Inhalte

    2.035
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von BOfH_666

  1. Hallo Andreas, Willkommen im MCSEforum.

     

    Wie schon im anderen Forum geschrieben, weiß ich nicht wie Du zu der Ausgabe kommst.

     

    https://forums.powershell.org/t/powershell-compare-folders/22658

     

    Wenn ich den folgenden Code ausführe ...

     

    $Dir1 = 'C:\test'
    $Dir2 = 'C:\test2'
    
    Compare-Object -ReferenceObject $Dir1 -DifferenceObject $Dir2

     

    ... erhalte ich eine Ausgabe wie diese:

     

    InputObject SideIndicator       
    ----------- -------------       
    C:\test2    =>
    C:\test     <=

     

    vor 21 Minuten schrieb Andreas_HGW:
    # In der Importdatei stehen pro Zeile jeweils 2 Verzeichnispfade, die verglichen werden sollen (mit Semikolon getrennt)

     

    Diese Info ist neu ... und verwirrend  ... kannst Du ein Beispiel dafür zeigen?

     

     

    Edit:

    ... jetzt hat's geklingelt ... 

     

    Versuch mal das hier:

    $Content1   = Get-ChildItem -Recurse -Path $Dir1 -Directory | Select-Object -ExpandProperty FullName
    $Content2   = Get-ChildItem -Recurse -Path $Dir2 -Directory | Select-Object -ExpandProperty FullName

     

  2. vor 17 Minuten schrieb Der_Peter:

    glaube

    ???

     

    vor 17 Minuten schrieb Der_Peter:

    ich hab hinbekommen

    Cool. Glückwunsch. Und danke für's Teilen.

     

    vor 17 Minuten schrieb Der_Peter:

    gehst auhc noch einfacher ?

    Ich würd's so lassen ... ;-) 

     

    Ein Tipp für's nächste Mal: Code hier im Forum bitte als Code formatieren. 

    Danke schon mal im Voraus

  3. Bei der ersten Code-Zeile, die Du angegeben hast fehlt die das Filter-Kriterium "in den letzten 180 Tagen erstellt". 

     

    Was ist falsch an der zweiten Code-Zeile? Ich würde noch dem Parameter "-Properties" die Eigenschaft "CannotChangePassword" hinzufügen - die scheinst Du ja zu wollen - und dann sollte das passen, oder?

     

    Davon unabhängig: Kannst Du bitte den Code hier im Forum als solchen formatieren? Das geht mit dem "</>" Button

    • Danke 1
  4. vor 2 Stunden schrieb johanndrees:

    Jedoch ist es nicht gesagt, dass nach einer Neuinstallation das Problem behoben ist.

    Wie könnte man das nur herausfinden?  :hmmm:

     

    vor 3 Stunden schrieb johanndrees:

    Möglicherweise sind weitere Einstellungen für den Zustand verantwortlich und der könnte sich wieder einstellen. Vor allem bei anderen Usern auch.

    Hast Du denn dahingehend bereits Meldungen erhalten?

     

    vor 3 Stunden schrieb johanndrees:

    Daher möchte ich gerne das Problem verstehen und lösen, nicht umgehen.

    Das ist ein legitimes Ansinnen. Ich habe aber den Eindruck, dass Du Dich im Moment um ungelegte Eier sorgst. Und wenn man seinen PC und die PowerShell darauf für seine Arbeit braucht, wäre ich daran interessiert ein funktionstüchtiges Arbeitsgerät zu haben und würde das Jugend-forscht-Projekt auf später verschieben und dann auch ein Test-Gerat dafür benutzen.

     

    so ... meine 2 Ct. ;-) 

  5. Bitte keine Screenshots posten, wenn der Text auch genügt. Einfach den Text kopieren, hier einfügen und als Code formatieren.  :thumb1:

     

    Darf ich fragen, wie lange Du Dich jetzt schon mit diesem Problem beschäftigst und wie lange auf der anderen Seite eine Neuinstallation dauern würde? Wenn eine Softwareverteilung existiert, mit der ein Rechner neu installiert wird, dauert es nach meiner Erfahrung üblicherweise nur 45 min oder so und Du wärst wieder auf einem definierten Zustand und könntest Dich wichtigeren Aufgaben widmen.  ;-) 

    • Danke 1
  6. vor 55 Minuten schrieb hacori:

    Leider habe ich da wenig mitzureden. Aber ich werde bei Gelegenheit den Chef darauf ansprechen.

    Wenn der Chef kein IT-Profi ist, ist er der falsche, das zu entscheiden. Wenn Du der IT-Profi in diesem Szenario bist, ist es Deine Expertise, die den Ausschlag geben sollte. Du solltest dem Chef ein entsprechendes Konzept anbieten, bei dem Du dann die geforderten Verantwortlichkeiten auch ruhigen Gewissens übernehmen kannst? Oder würdest Du Dein Auto eher vom Buchhalter einer Autowerkstatt repariert und instand gehalten wissen, als von einem Mechaniker?  :aha2:

    • Danke 1
  7. Am 12.6.2023 um 15:24 schrieb SFFBG:

    Kann man irgendwo sehen welche Cmdlets aufgeführt wurde für das was man gerade gemacht hat?

    Im EAC rechts oben neben Deinem Account und rechts neben dem Fragezeichen hast Du ein kleines Drop-Down-Menü mit einem Eintrag der in einer deutschen Oberfläche "Befehlsprotokollierung anzeigen" heißt.  Da kannst Du die Befehlsprotokollierung anzeigen. ;-) 

  8. ... Vielleicht mal ein anderer "Betrachtungswinkel" ...  

     

    vor 29 Minuten schrieb PeterchenFrost:

    aber ich entscheide dies nicht

    Aber Du bist im Zweifel der Experte, der den Entscheidern die fehlenden Informationen an die Hand geben sollte, die offenbar unbekannt sind. Frag doch mal, was ihnen wichtiger ist - Aussehen oder Leistung ;-)  ... 

  9. vor 3 Stunden schrieb newbi2009:

    Ich möchte es eigentlich vermeidenzu allen Kollegen zu latschen und einen Link auf die ps.1-Datei zu erstellen.

    Dafür gibt es Software-Deployment-Lösungen oder GPOs.

     

    vor 3 Stunden schrieb newbi2009:

    Ausserdem bin ich mir nicht ganz sicher, ob der Link das Problem lösen würde.

    Ich schon.

    vor 3 Stunden schrieb newbi2009:

    Es würde dann doch der Pfad des lokalen Rechners ausgelesen - also würden die Log-Dateien wieder nicht alle im gleichen Verzeichnis (Netzlaufwerk) landen.....

    Nein, würde es nicht.

     

    vor 3 Stunden schrieb newbi2009:

    Dass die Datei mit der PowerShell.exe ausgeführt werden sollte ist mir schon klar. Aber es wird (glaube ich) halt standardmäßig die 64bit Version ausgeführt, die gegen die Pumpe läuft, wenn man versucht damit eine LotusNotes-Anwendung auszulesen....

    Deswegen schrub ich auch, dass Du die 32-Bit-Version in der Verknüpfung "FEST VERDRAHTEN" kannst. Du kannst doch selbst bestimmen, was ausgeführt wird, indem Du den gewünschten Pfad der 32-Bit-Version der PowerShell.exe angibst.  

     

    vor 3 Stunden schrieb newbi2009:

    Und alles andere als rechter Mausklick / Ausführen mit  kann ich meinen Kollegen nicht zumuten :-)

    Dazu sage ich jetzt nix weiter.

  10. vor 41 Minuten schrieb newbi2009:

    Jetzt gibt es ein paar Probleme:

    Das ist das falsche Wort. Wir nennen das Herausforderung.   ;-)

     

    vor 41 Minuten schrieb newbi2009:

    - Windows öffnet ps.1-Dateien standardmäßig mit einem Text-Editor (Doppelklick auf die Datei führt diese nicht aus)

    Hangeln sich Deine Kollegen alle in diesen Ordner und führen das Dingens aus, oder wäre es nicht eine Idee, den Kollegen eine Verknüpfung in Startmenü oder auf dem Desktop zur Verfügung zu stellen? Da können sie dann auch einfach drauf klicken.

     

    vor 41 Minuten schrieb newbi2009:

    - mein Script MUSS in einer 32 Bit Variante von PowerShell ausgeführt werden (weil ich Lotus Notes abfrage) - Das heisst, "rechter Mausklick/öffnen mit Powershell" lässt das Skript abbrechen, weil Powershell standardmäßig in einer 64 bit Version startet

     

    Für diese Herausforderung wäre auch eine entsprechende Verknüpfung die Lösung. Darin kann man problemlos die 32-Bit-Version der PowerShell "hart verdrahten" und das Script per UNC-Pfad übergeben. 

     

    vor 41 Minuten schrieb newbi2009:

    Ich muss das Skript also in einer "Powershell ISE" öffnen

    Warum? Die ISE ist nur für die Script-Entwicklung gedacht - ausgeführt werden Scripte üblicherweise mit PowerShell.exe. 

     

    vor 41 Minuten schrieb newbi2009:

    Lese ich jetzt den Pfad mit  "get-location" oder "PWD" aus,

    Dafür gibt es die zur Laufzeit automatisch befüllte Variable "$PSScriptRoot". 

     

    vor 41 Minuten schrieb newbi2009:

    Dieses Skript schreibt Log-Dateien, die im gleichen Verzeichnis erzeugt werden sollen (Z:\Skripte\Logs)

    Je nach Umfang des Scripts und der erzeugten Log-Dateien, ist es keine gute Idee direkt auf einem Netzlaufwerk zu loggen. Dateisystem-Zugriffe bremsen sowieso schon enorm. Und wenn das dann noch Richtung Netzwerk geht vermindert das die Leistung nochmal deutlich.

  11. Punkte sind, wenn es um regex geht "spezielle Zeichen". Der Punkt steht für ein beliebiges Zeichen. Wenn Du also wirklich einen Punkt ersetzen willst, musst Du ihn "Escapen". 

     

    Im einfachsten Fall so ... 

    "2261 4405 ..." -replace '\s\.\.\.'

     

    Das Escape-Zeichen ist der Backslash "\" und das "\s" steh hier für ein "White-Space" - also ein Leerzeichen oder ein Tab .... 

×
×
  • Neu erstellen...