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

Scripts/Batch Discussion :

Copie de fichier en prenant une partie du nom


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Chef d"équipe
    Inscrit en
    Février 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Chef d"équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2014
    Messages : 3
    Par défaut Copie de fichier en prenant une partie du nom
    Bonjour à tous,

    dans le cadre de mon travail, plusieurs fichiers sont créés tous les jours pour les différents services (achat 12-02.pdf ; production 12-02.pdf ; direction 12-02.pdf...).

    Les chiffres "12-02" étant la date sous forme jj-mm.

    Me concernant, je voudrais créer un fichier batch qui copierai le fichier me concernant (production) dans un autre dossier (pour archivage) et de l'imprimer.

    Le problème pour moi réside dans le fait qu'il y la date (sans la date, j'y serai arrivé avec un xcopy), je ne parvient pas à trouver la syntaxe pour que le batch analyse uniquement le début du fichier ("achat", "production", "direction") sans tenir compte de la date.

    En fouillant sur le forum, j'ai bien trouvé cette discussion (http://www.developpez.net/forums/d11...e-nom-fichier/) mais étant que débutant, je ne comprend pas la syntaxe et cela me semble plus compliqué que ce que je cherche.

    D'autant plus, si j'ai bien compris les quelques règles sur le batch, je dois prendre en compte l'espace entre "production" et la date.

    Merci d'avance pour l'aide que vous m'apporterez.

  2. #2
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2011
    Messages : 7
    Par défaut
    voici quelques lignes de code qui devraient t'aider:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    @ECHO OFF
    @echo.
    @echo.
    
    ::Enlève les 10 derniers caractères d'une chaine mise dans la variable str
       ::Met "production 12-02.pdf" dans str
       set str=production 12-02.pdf
    
       ::Met la même valeur dans StrLg qui va être rognée d'un caractère à chaque fois pour calculer la longueur de str
       set StrLg=%str%
    
       ::Initialise le compteur Longueur à 0
       set Longueur=0
    
        :calculLg     
           if not defined StrLg goto affichage
            ::Enlève la première lettre de StrLg et incrémente Longueur
            set StrLg=%StrLg:~1%
            set /a Longueur+=1
            goto calculLg
     
        :affichage
            echo ma chaine d'origine "%str%" a une longueur de %Longueur% caractères        
    
        ::Fixe la longueur utile à %longueur% - 10
        set /a Longueur=%Longueur%-10
        set maCmd=set str=^%%str:~0,%Longueur%^%% 
        call %maCmd%
    @echo.
    @echo.ma chaine utile est "%str%"
    @echo.
    @echo.
    @echo.
    @echo.
    :end
    pause
    exit

  3. #3
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    Voilà une idée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    set $chemin=Ton_Repertoire_de_destination
    
    for /f "delims=" %%a in ('dir *.pdf /b ^| find /i "production"') do echo copy %%a %$chemin%

Discussions similaires

  1. Réponses: 10
    Dernier message: 17/11/2011, 16h37
  2. copie de fichier à partir d'une clé usb
    Par aklabig dans le forum Applications et environnements graphiques
    Réponses: 4
    Dernier message: 24/09/2007, 14h58
  3. copie de fichier à partir d'une url
    Par Gibbon dans le forum C#
    Réponses: 4
    Dernier message: 06/02/2007, 14h13
  4. Réponses: 2
    Dernier message: 18/01/2007, 21h05
  5. Copie de fichiers XLS dans une table
    Par sebvita dans le forum Oracle
    Réponses: 3
    Dernier message: 28/12/2005, 09h13

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