Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Linux Forum Linux-Web.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

1

16.10.2003, 10:17

Programm zum automatischen Löschen alter Dateien

Kleine Frage in die Runde:

Ich suche ein Programme, welches automatisch täglich in einen bestimmten Verzeichnis (z.B. /usr/loeschen) die Dateien löscht, welche älter als z.B. 2 Monate sind.

Kennt jemand was geeignetes dafür?
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

3

16.10.2003, 13:35

Und noch eine kleine Hilfestellung ;)

Quellcode

1
2
3
4
5
6
#!/bin/sh
cd /usr/loeschen
for file in `find * -atime +62`
do
  rm $file
done

Diese Script dann täglich mit nem Cronjob ausführen lassen und glücklich sein ...


Michael
Life is like ice cream: enjoy it before it melts!
"If there is (a God), all evidence indicates that He hates me." - Matt Groening

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

4

16.10.2003, 16:55

Thus spake Michael:
> Und noch eine kleine Hilfestellung ;)

Quellcode

1
2
3
4
5
6
#!/bin/sh
cd /usr/loeschen
for file in `find * -atime +62`
do
  rm $file
done

> Diese Script dann täglich mit nem Cronjob ausführen lassen und
> glücklich sein ...

Wieso nich einfach
$ find /usr/loeschen -atime +62 | xargs -0 rm
*meinjanur*
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

mwanaheri

Fortgeschrittener

  • »mwanaheri« ist männlich

Beiträge: 359

Wohnort: NRW

Beruf: Linguist, Software-Developer

  • Nachricht senden

5

16.10.2003, 20:59

Das ist wohl der Konflikt zwischen Kürze und Lesbarkeit. Ich nehme auch gern mal 'ne Zeile mehr, wenn ich dafür hinterher besser lesen kann, was das sollte, was ich da irgendwann mal getippt habe. Ist aber wohl reine Geschmackssache.
Computer und Konjunktive gehören nicht zusammen.

6

16.10.2003, 21:23

strcat hat Recht ;)
In der Kürze liegt die Würze.
Allerdings muss ich zugeben, dass ich das Teil nur mal schnell "freihand zusammengeschustert" habe! :crazy:

Aber das ist ja auch was schönes: viele Wege führen nach Rom!
Und die beiden Beispiele veranschaulichen das. ;) :()


Michael
Life is like ice cream: enjoy it before it melts!
"If there is (a God), all evidence indicates that He hates me." - Matt Groening

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

7

17.10.2003, 18:57

Wie schauts hiermit aus?

#!/bin/bash
# Dateien aus dem Transferverzeichnis werden geloescht, wenn laenger als
# 30 Tage kein Zugriff erfolgte. Verzeichnisse werden nicht geloescht.
for FILE in $(find /home/transfer -type f -ctime +30)
do
rm -f $FILE
done


Und danke an strcat und michael!!!!
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

8

17.10.2003, 19:30

Thus spake Caddy:
> Wie schauts hiermit aus?

fnord.

> #!/bin/bash

In Scripten '#!/bin/sh' verwenden, weil nicht sichergestellt ist das
das Script von einer Loginshell aus abgearbeitet wird.

> # Dateien aus dem Transferverzeichnis werden geloescht, wenn laenger als
> # 30 Tage kein Zugriff erfolgte. Verzeichnisse werden nicht geloescht.
> for FILE in $(find /home/transfer -type f -ctime +30)
[...]

Mit 'FILE' wuerd ich vorsichtig sein. Nimm lieber was eindeutiges das
definitiv nicht vom OS verwendet wird ('FILE' wird z. B. von einige
Makefiles und Configure - Scripten gesetzt und es kann passieren das
die Variable mit 'export' gesetzt wurde.
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

Chucky the Devil

Pianist im Puff

  • »Chucky the Devil« ist männlich

Beiträge: 1 636

Wohnort: Koeln

Beruf: Network Architect

  • Nachricht senden

9

17.10.2003, 19:37

Das selbe in Gruen (nur halt 30 Tage und das anstatt des letzten Zugriff nun die letzt Aenderung gesucht wird). Das koenntest Du auch wieder nach strcat's Variante umbauen..

Quellcode

1
find /home/transfer -type f -ctime +30 | xargs -0 rm

wickey

pass < /dev/urandom

Beiträge: 401

Wohnort: Tuxhafen

Beruf: .

  • Nachricht senden

10

18.10.2003, 10:27

Zitat

Original von Caddy
Wie schauts hiermit aus?

#!/bin/bash
# Dateien aus dem Transferverzeichnis werden geloescht, wenn laenger als
# 30 Tage kein Zugriff erfolgte. Verzeichnisse werden nicht geloescht.
for FILE in $(find /home/transfer -type f -ctime +30)
do
rm -f $FILE
done




Hm, mann sollte Mist nicht ungeprüft per Copy&Paste übernehmen :crazy:

http://www.linuxforen.de/forums/showthre…threadid=103786

grüße wickey
...and remember: WWW does not stand for "World Wide Windows"
Der Linuxanfänger --> http://members.aon.at/wickey/
EGSZ (Znacntrf) be ivfvg tbbtyr

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 331

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

11

18.10.2003, 13:03

Thus spake wickey:
> Hm, mann sollte Mist nicht ungeprüft per Copy&Paste übernehmen

Man sollte gar nichts per Copy&Paste uebernehmen (ausser man ist
masochistisch angehaucht).

> http://www.linuxforen.de/forums/showthre…threadid=103786

[dope@dreckskind:~]# uname && ls -l =bash
Linux
zsh: bash not found
[dope@painless:~]% uname && ls -l =bash
OpenBSD
zsh: bash not found
[dope@painless:~]%

Leute die '#!/bin/bash' in Scripten als Interpreter verwenden kann und
will ich nicht ernstnehmen.
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

12

20.10.2003, 10:31

Ich möchte mich nochmals bei allen bedanken. Hat mir sehr geholfen und das Problem ist gelöst.

Die eine Sache war von linuxforen.de. Ich wollte nur mal die Meinung von strcat, michael und Chucky the Devil hören, da sie einfach sehr kompetent sind. Das war der ganze Grund.

Danke
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

Thema bewerten