IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Déplacer des fichiers via une tache CRON


Sujet :

Shell et commandes GNU

  1. #21
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 549
    Points : 19 378
    Points
    19 378
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    test -d "$dirB" || mkdir "$dirB"
    find "$dirA" -type f -exec cp --parents -t "$dirB" {} \; -delete
    ?
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  2. #22
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Points : 56
    Points
    56
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Je proposerais bien un script de ce genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    cd "<incoming>"
    find . -type f -print0 | while read -d file; do
        dir="<collecte>/${file%/*}" # le répertoire de destination
        mkdir -p "${dir}" # on le crée si nécessaire
        mv "${file}" "${dir}/" # on déplace le fichier déposé
    done
    Pouvez vous m'indiquer commenet fonctionner cela sur mon serveur ?
    Il faut enregistrer le code dans un fichier de script je usppose , mais comment l'exécuter ensuite ?

  3. #23
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par mballasse Voir le message
    Il faut enregistrer le code dans un fichier de script je usppose , mais comment l'exécuter ensuite ?
    Ben... comment dire?

    Est-ce que tu veux l'exécuter une seule fois à la main pour voir si ça fonctionne?

    Ou bien via une tâche cron (comme indiqué dans ton titre), auquel cas, le plus simple àmha est juste de bien relire la 2ème partie de la première réponse de Flodelarab (<- cliquer ici), à partir de:

    Citation Envoyé par Flodelarab Voir le message
    Si tu veux quelque chose de plus élaboré, tu crées un fichier texte (plat) auquel tu donnes les droits d'exécution.
    Tu essaies ce qu'il dit et si ça ne marche pas comme tu voudrais, tu nous montres ce que tu as fait et le résultat.

  4. #24
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Points : 56
    Points
    56
    Par défaut
    J'ai mis en place cette solution directement en ligne de commande sur une tâche CRON.

    Le déplacement des fichiers et répertoires se fait bien.
    Nickel , c'est bien ce que je voulais sauf que..... je perds toute l'arborsecence de départ.
    Donc cela ne fonctionne que partiellement

  5. #25
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par mballasse Voir le message
    c'est bien ce que je voulais sauf que..... je perds toute l'arborsecence de départ.
    C'est vraiment étonnant car les solutions proposées utilisent un find . -type f qui est censé ne travailler que sur les fichiers et non les répertoires.
    Peux-tu nous montrer ton code?

  6. #26
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Points : 56
    Points
    56
    Par défaut
    Le code utilisé dans mon fichier de script est celui que vous avez mis dans votre post

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    cd "<incoming>"
    find . -type f -print0 | while read -d file; do
        dir="<collecte>/${file%/*}" # le répertoire de destination
        mkdir -p "${dir}" # on le crée si nécessaire
        mv "${file}" "${dir}/" # on déplace le fichier déposé
    done
    Nom : 2019-04-25_09-37-35.jpg
Affichages : 53
Taille : 56,4 Ko

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/05/2016, 15h22
  2. [Batch] Déplacer des fichiers ayant une chaine de caractère précise
    Par SkitsVicious dans le forum Scripts/Batch
    Réponses: 18
    Dernier message: 11/05/2016, 13h27
  3. Compresser des fichiers via une connexion HTTP
    Par cisnake dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 27/01/2014, 22h59
  4. [1.x] envoi d'email via une tache cron
    Par erictomcat dans le forum Symfony
    Réponses: 2
    Dernier message: 17/05/2011, 20h18
  5. Réponses: 3
    Dernier message: 27/09/2008, 11h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo