Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Kopieren von dateien

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
blotter



Anmeldungsdatum: 06.10.2004
Beiträge: 2

BeitragVerfasst am: 06. Okt 2004 12:56   Titel: Kopieren von dateien

Hi!!

Ich hab ein paar hltv server laufen und die nehmen durchweg demos auf. Die demos werden in ein und dem selben ordner gespeichert. Nun will ich per cronjop diese dateien einmal am tag in einen ordner kopieren wo man sie per http downloaden kann. Mein problem ist das ich nur alle koppieren kann ( copy demo* /var/www/...../demos ) . In dem ordner Sind sagen wir mal 15 dateien ( variable größe ) alle beginnen mit demo,. Nun will ich alle dateien außer die letzten 2 ( variable größe ) in einen neuen ordner verschieben / kopieren. Wie kann ich das bewerkstelligen das das scipt was von cron einmal am tag gestartet wird alle dateien bis auf die letzten 2 (variable größe ) in einen extra ordner kopiert / verschiebt?
Die letzten 2 ( variabke größe ) weil diese dateien von dem hltv noch in neutzung sind aber trotzdem kopiert werden können was aber im nachhinein die demos unanschaubar macht.

Ich würde mich freuen wenn mir einer helfen kann bzw mir einen ansatz zeigt wie ich dies bewerkstelligen kann

mfg blotter
 
Benutzer-Profile anzeigen Private Nachricht senden

killerhippy



Anmeldungsdatum: 19.05.2000
Beiträge: 529

BeitragVerfasst am: 06. Okt 2004 21:16   Titel:

Hi,

das Verschieben von Dateien innerhalb gleicher Partiitionen, solange sie offen sind, funktioniert deshalb, weil sie ihre inode Nummer behalten und deshalb wird weiterhin darin geschrieben. Ueber Partitionsgrenzen hinweg funktioniert das nicht.

Dein Problem laesst sich mit ein bisschen scripten mit
Code:
ls -lrt | head -n 14
etwas sed, cut und grep bewerkstelligen.
_________________
Es gibt keine dumme Fragen!

Killerhippy


Zuletzt bearbeitet von killerhippy am 06. Okt 2004 21:19, insgesamt 1-mal bearbeitet
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

Lateralus
prolinux-forum-admin


Anmeldungsdatum: 05.05.2004
Beiträge: 1238

BeitragVerfasst am: 06. Okt 2004 21:19   Titel:

Ganz unsauber so:

Code:

#!/bin/sh

anzahl=0
for file in $(ls [Quellverzeichnis]/demo*); do
  anzahl=$[$count+1]
done

count=0
for file in $(ls [Quellverzeichnis]/demo*); do
  if [ "$count" -le "$[$anzahl-2]" ]; then
    cp file [Zielverzeichnis]
  fi
  count=$[$count+1]
done

 
Benutzer-Profile anzeigen Private Nachricht senden

blotter



Anmeldungsdatum: 06.10.2004
Beiträge: 2

BeitragVerfasst am: 07. Okt 2004 8:52   Titel:

Hi!

Ich danke euch für eure schnell hilfe.
Iich werd das kleine script mal ausprobieren.
....
Ich hab das scipt mal ausprobiert und bissel was gändert
Code:

#!/bin/bash
# 06.10.04 first add by Lateralus
# 07.10.04 modify by blotter

# set vars
anzahl=0
count=0
subtr=2
sdir="QUELLVERZEICHNIS + datei*"
cdir="ZIElVERZEICHNIS"

# lets work start now
#
# get number of the files contained in the directory
for file in $(ls $sdir); do
    anzahl=$[$anzahl+1]
    #echo $anzahl $file
done

# move the files from the directory in a new directory out of the last $subtr
for file in $(ls $sdir); do
    count=$[$count+1]
    if [ "$count" -le "$[$anzahl-$subtr]" ]; then
        cp $file $cdir
        rm $file
        #echo $count $file
    fi
   # echo $count $file
done


mfg blotter
 
Benutzer-Profile anzeigen Private Nachricht senden

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy