Jump to content

Datei abgleichen auf Größe und Änderungszeitpunkt


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo Gemeinde ich habe folgende Frage.

 

Ich soll eine Datei entferen jedoch nur wenn diese nicht geändert wurde (gleiche Größe und Änderungszeitpunkt wie bei der Installation)!

 

Wie kann ich das am besten machen.

 

Daher meine Kenntnisse ziehmlich eingeschränkt sind in der Powershell hoffe ich hier auf Rasche Hillfe daher ich das für meinen Arbeitgeber brauche.

( Der Powershell Guru der Firma ist eine Woche krank und deswegen stehe ich auch unter Zeitdruck)

 

Danke ich Vorraus für die Hilfe

 

Lg

 

Schreckinger

  • 2 Wochen später...
Geschrieben

Hallo Dukel

 

danke erstmals für die Antwort.

Das Problem habe ich noch nicht gelöst daher es sich zum glück aufschieben hat lassen, doch möchte ich es jetzt probieren

 

ich habe mal nach besten gewissen ein Script erstellt ?, dieses funktioniert jedoch nicht.

 

If{(Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).CreationTime -eq (Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).LastWriteTime
}
else
{
Remove-item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS
}

 

Wie gesagt mein wissen mit der Powershell ist sehr begrenzt und daher auch meine Frage ob du mir das richtig stellen kannst bzw. Tipp geben kannst.

 

Danke

 

lg

Geschrieben

Gibt's auch ne Fehlermeldung? Hast du dir mal die Syntax zu if angeschaut?

 

if(Bedingung){

Doing

}else{

Doing

}

 

Bei dir sind die Klammern etwas durcheinander und ich würde, wenn es beim if nichts zu tun gibt die Bedingung drehen. Dann sparst du dir das else.

Geschrieben

Hallo Dukel

 

wie meinst die Bedienung drehen ? Kannst du mir das an hand von dem Beispiel erklären. Ich muss nämlich nochmals zurück zu denn Basics, daher ich mir in der Powershell noch immer sehr schwer tue.

 

werd mir die dokus nochmal durch lesen und üben üben üben

 

Wie gesagt danke für deine Hilfe.

Geschrieben

If{(Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).CreationTime -ne (Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).LastWriteTime
}
foo(){
Remove-item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS
}

 

ist das so dann richtig ?

Geschrieben

okay aber wie gehören die klammern ?

 

If()
{Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).CreationTime -ne (Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).LastWriteTime

Remove-item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS
}

ich komm nicht dahinter ? ich brauche ja die runden und die geschwungen Klammern ?

Geschrieben

if(Bedingung){

Doing

}else{

Doing

}

 

Das else brauchst du ja nicht:

if(Bedingung){

Doing

}

 

Welches von deinen Zeilen ist die Bedingung und welches ist das Doing (wenn die Bedingung zutrifft)?

Ersetze das jeweilige mit meinem Teil.

Geschrieben

if(Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).CreationTime -eq (Get-Item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS).LastWriteTime){
Remove-item $env:PROGRAMDATA\CenturaSQL\Databases\SPVLOCAL\SPVLOCAL.DBS
}

 

ist es so richtig ?

 

danke dukel für deine geduld mit mir

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...