Jump to content

Saiinox

Members
  • Gesamte Inhalte

    6
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von Saiinox

  1. Hi zusammen,

     

    ich versuch aktuell die Quota Messages anzupassen.

     

    Ist es möglich die Quota Messages direkt zu triggern ohne das Postfach zu füllen? - Hab gesehen man kann im ECP was anpassen, allerdings ist mein Testpostfach leer und ich habe das Gefühl, dass Exchange mit das im kb Bereich nicht triggern möchte. 

    Außerdem frage ich mich wo die Messages wenn ich die mit Get-SystemMessage erstelle liegen, hab nen LDAP Pfad gesehen, aber hab leider nicht wirklich viel Ahnung von LDAP da ich eher aus der Linux Welt komme?

     

    Gruß Tim

  2. Hi,

     

    ich hab nen kleines Skript gebastelt, welches Log Files die älter als 7  Tage sind löschen soll.

    In der PS ISE funktioniert es auch wunderbar, wenn ich es jedoch als ps1-Datei speichere und via PS Konsole aufrufen will, passiert nichts.

    Er wirft mir nirgends eine Fehlermeldung, wenn ich es über die Konsole in der IDE ausführen klappt es wunderbar.

     

    ExecutionPolicy ist bei mir auf Unrestricted 

    Als Admin in der Konsole hatte ich es auch versucht, außerdem hab ich versucht das Teil von C:\ aufzurufen und vom Ordner in dem es liegt selbst.

    Im Skript selbst sind auch nur komplette Pfade angegeben.

     

    Ich vermute mal es muss irgendwas im Skript nicht passen, da vorherige Projekte wunderbar aufrufbar waren.

     

    Hier mein Code

    $ToLogDataPath = @(
    "C:\temp\*.txt"
    "C:\temp2\*.txt"
    "C:\temp4\*.txt"
    )
    
    $TimeRange = -7
    
    $LogFiles = @()
    
    
    function GetLogs
    {
    
        for ($i = 0; $i -lt ($global:ToLogDataPath).Count; $i++)
        {
            $global:LogFiles += get-childitem -Path $global:ToLogDataPath[$i] recurse | where-object{$_.lastwritetime -lt (get-date).addDays($global:TimeRange)}  
        }
    }
       
    function DelLogs
    {
    
        if (($global:LogFiles).Count -ge 0)
        {
            echo("Dateien älter als " + ($global:TimeRange * -1) + " Tage:") >> ("C:\Users\" + $env:USERNAME + "\Desktop\" + (get-date).ToString('dd-MM-yyyy') + "DelOldLogs.log")
    
            for ($j = 0; $j -lt ($global:LogFiles).Count; $j++)
                {
                echo $global:LogFiles[$j].FullName >> ("C:\Users\" + $env:USERNAME + "\Desktop\" + (get-date).ToString('dd-MM-yyyy') + "DelOldLogs.log")
                Remove-Item $global:LogFiles[$j].FullName
                }
        }
        else 
        {
            echo("Es konnten keine Dateien älter als " + ($global:TimeRange * -1) + " Tage gefunden werden") >> ("C:\Users\" + $env:USERNAME + "\Desktop\" + (get-date).ToString('dd-MM-yyyy') + "DelOldLogs.log") 
        }
        $global:LogFiles = $null
    }
    GetLogs
    DelLogs

     

    Falls es Verbesserungsvorschläge gibt, immer raus damit :)

     

    Danke für die Hilfe schonmal.

    Gruß Tim

  3. vor 2 Minuten schrieb BOfH_666:

    Tim,

    Willkommen im MCSEboard.

     

     

    Und warum schreibst Du dann eine einfache Text-Datei? Export-Csv wäre dann wohl besser geeignet. 

     

     

    Im einfachsten Fall startest Du das Script im gewünschten Verzeichnis und dann sollte so etwas hier genügen:

    Get-ChildItem  | 
        Get-FileHash | 
            Export-Csv -Path 'C:\temp\HashList.csv' -NoTypeInformation

     

    Hi,

     

    danke für die Schnelle Antwort und die Lösung meines Problems!

    Hatte anfangs eine CSV-Datei, aber beim hin und her testen wurde es dann eine Text-Datei.

     

    Jetzt kann ich auf jeden fall weiter machen, vielen Dank!

     

    #closerequest

  4. Hi,

     

    ich würde gerne für eine kleine Spielerei eine Art Patcher programmieren.

    Mein Plan, war es die gesamten Dateien in der gewählten Ordner Struktur in eine Datei zu schreiben, vermutlich eine CSV und dann die CSV, Zeile für Zeile auszulesen und den Hash abfragen und am Ende den Hash der CSV-Datei mit der, auf dem Webspace zu vergleichen um zu prüfen ob gepatcht werden muss.

     

    Mein Problem ist folgendes:

    Mit diesem Befehl kann ich mir die Pfade in die Datei schreiben, 

    Get-ChildItem -Recurse $Pfad | Select FullName | Out-File -FilePath C:\temp\test.txt

    Jedoch fügt Powershell noch 3 weiter Zeile ein, welche mir bei der Abfrage nicht gefallen.

    Außerdem bekomme ich es nicht hin mir die Zeilen raus zu holen für ne foreach schleife oder ähnliches.
     

    
    
    $Pfad = "C:\Users\" + $env:USERNAME + "\test"
    
    Get-ChildItem -Recurse $Pfad | Select FullName | Out-File -FilePath C:\temp\lnp.txt
    
    $ausgabe=Import-CSV -Path C:\temp\lnp.txt 
    
    foreach($zeile in $ausgabe)
    {
    $Hash = (Get-FileHash -path $zeile).Hash
    write $zeile
    }
    
    

    Hier mein Ansatz.

     

    Ich hoffe auf einen Hilfe oder einen kleinen Denkanstoß, auf Google bin ich nämlich nicht wirklich weiter gekommen, evtl. war ich aber auch einfach nur blind.

     

    Gruß tim

×
×
  • Neu erstellen...