FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Une calculatrice en une ligne de programme
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar jean_debord Aujourd'hui à 8:01

» Gestion d'un système client-serveur.
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar Pedro Hier à 19:31

» Les maths du crocodile
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar jean_debord Hier à 10:37

» Naissance de Crocodile Basic
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar jean_debord Hier à 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar papydall Dim 21 Avr 2024 - 23:30

» Form
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar leclode Dim 21 Avr 2024 - 18:09

» trop de fichiers en cours
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar Marc Dim 21 Avr 2024 - 2:41

» 2D_fill_color(résolu)
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

» Bataille-navale
fichiers - Afficher la liste des fichiers modifiés aujourd'hui Emptypar jjn4 Mer 3 Avr 2024 - 14:08

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le deal à ne pas rater :
Réassort du coffret Pokémon 151 Électhor-ex : où l’acheter ?
Voir le deal

 

 Afficher la liste des fichiers modifiés aujourd'hui

Aller en bas 
5 participants
AuteurMessage
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMar 17 Fév 2015 - 19:46

SUB Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$)

C'est une procédure pour afficher dans une boite de message la liste des fichiers qui ont été crées ou modifiés dans la date d'aujourd'hui et ça concerne uniquement ceux du dossier rep$ (et ses sous-dossiers) transmis comme paramètre à la SUB.

L'appel se fait par :

Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$)

rep$ est le chemin du dossier à surveiller.
Si on veut surveiller tout un volume (par exemple tout le disque x:), l'appel se fera ainsi:
Afficher_Liste_Fichiers_Modifies_Aujourdhui("x:")

Attention :
Il ne faut pas mettre le back-slash \ s'il s'agit de la racine d'un disque.
La procédure s'en chargera comme une grande fille!

Pour ceux qui veulent comprendre (c'est leur plein droit) comment ça marche:
C'est le joli boulot de la commande :
dir …\ *.* /s /o:n | find "%date%"| clip

ça permet d’afficher tous les fichiers (\*.*) du répertoire en question et de ses sous-répertoires (/s) avec un ordre de tri sur le nom (/o :n) après avoir passé la liste à travers le filtre de recherche (| find) qui ne retiendra que les éléments de la liste qui contiennent la date courante (%date%) dans leurs spécifications et pour terminer, envoyer tout ce beau monde au presse-papier (| clip).

Remarque :
Vous pouvez spécifier l’ordre de la liste comme suit :
/o:n   <---- Nom (alphabétique)
/o:s   <---- Taille (ordre croissant)
/o:e   <---- Extension (alphabétique)
/o:d   <---- Date et heure (chronologique)
/o:g   <---- Répertoire
/o:-   <---- Préfixe en ordre indirect

Code:

rem ============================================================================
rem         Afficher la liste des fichiers modifiés aujourd hui
rem   dans le dossier transmis en paramètre ainsi que dans ses sous-dossiers
rem                      Par Papydall
rem ============================================================================
hide 0
' Adapter le chemin ...
 Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Users\acer\Desktop\panoramic")
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Windows\system32")
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:")
end
rem ============================================================================
' Afficher la liste des fichiers modifiés aujourd'hui dans le dossier rep$ et
' ses sous-dossiers
' Vous pouvez choisir d'afficher la liste selon un tri :
' /o:n   <---- Nom (alphabétique)
' /o:s   <---- Taille (ordre croissant)
' /o:e   <---- Extension (alphabétique)
' /o:d   <---- Date et heure (chronologique)
' /o:g   <---- Répertoire
' /o:-   <---- Préfixe en ordre indirect
rem ============================================================================
SUB Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$)
    application_title "Fichiers modifiés aujourd'hui dans : " +rep$
    execute_wait "cmd /c dir "+ rep$ +"\*.* /s /o:n|find "+chr$(34)+"%date%"+chr$(34)+"|clip"
    if clipboard_string_paste$ = ""
       message "Aucun fichier n'a été modifié aujourd'hui" + chr$(13)+"dans le dossier : " +rep$
    else
       message clipboard_string_paste$
    end_if
END_SUB
rem ============================================================================


@Ygeronim
Si tu estimes que cette sub peut se loger dans Le Mag, je t'en enverrais un zip.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMar 17 Fév 2015 - 20:51

Moi, je pense que oui avec les explications en commentaires car il y a d'autres utilisations possibles avec tes indications.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMar 17 Fév 2015 - 21:07

Toutes les procédures qui font ce pourquoi elles sont faites
ont leur place.
Si elle ne sont pas utilisées tel qu' elles sont produites, 
elles peuvent servir de base de travail. Wink
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMar 17 Fév 2015 - 21:15

Intéressant en effet, mais pour ma part je sortirais l'affichage du résultat de la sub.
Je viens de faire la liste des fichiers modifiés sur C:, je récolte un peu plus de 1000 lignes de résultat, la commande Message n'affiche qu'un petit début de la liste.
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMer 18 Fév 2015 - 0:36

Merci à tous.

J’ai apporté une légère modification sur le code pour une meilleure utilisation de la sub.
Vous aurez le choix de la sortie du résultat soit dans un message soit dans le bloc-notes.

L’appel se fera ainsi :
Code:

Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$,output$)

Le paramètre output$ prendra les valeurs :
"m" ou "M" pour une sortie dans un message
"n" ou "N" pour une sortie dans le bloc-notes (notepad)

Code:

rem ============================================================================
rem         Afficher la liste des fichiers modifiés aujourd hui
rem   dans le dossier transmis en paramètre ainsi que dans ses sous-dossiers
rem                      Par Papydall
rem ============================================================================
rem La sortie se fera selon le paramètre output$ soit dans un message
rem soit dans le bloc-notes.
rem Appel:
rem Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$,output$)
rem rep$ est le dossier (et ses éventuels sous-dossiers) sur lequel la sub va travailler
rem output$ est le paramètre pour la sortie du résultat:
rem Il prend les valeurs :
rem "m" ou "M" pour une sortie dans un message
rem "n" ou "N" pour une sortie dans le bloc-notes (notepad)
rem ============================================================================
hide 0

' Adapter le chemin ...
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Users\acer\Desktop\panoramic","m")
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Windows\system32","n")
 Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:","n")
end
rem ============================================================================
' Afficher la liste des fichiers modifiés aujourd'hui dans le dossier rep$ et
' ses sous-dossiers
' Vous pouvez choisir d'afficher la liste selon un tri :
' /o:n   <---- Nom (alphabétique)
' /o:s   <---- Taille (ordre croissant)
' /o:e   <---- Extension (alphabétique)
' /o:d   <---- Date et heure (chronologique)
' /o:g   <---- Répertoire
' /o:-   <---- Préfixe en ordre indirect
rem ============================================================================
SUB Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$,output$)
    dim_local out$,q$
    q$ = chr$(34)
    if upper$(output$) = "M"
       out$ = "| clip"
    else
       if upper$(output$) = "N"
          out$ = "> liste.txt"
       else
          message "Erreur sur la paramètre output$" : exit_sub
       end_if
    end_if
    application_title "Fichiers modifiés aujourd'hui dans : " +rep$
    execute_wait "cmd /c dir "+ rep$ +"\*.* /s /o:n|find "+q$+"%date%"+q$+out$
    if upper$(output$) = "M"
       if clipboard_string_paste$ = ""
          message "Aucun fichier n'a été modifié aujourd'hui" + chr$(13)+"dans le dossier : " +rep$
       else
          message clipboard_string_paste$
       end_if
    else
       execute "cmd /c start liste.txt"
    end_if
END_SUB
rem ============================================================================


Le code est très simple et avec les explications données dans le précédent message, vous pouvez l’adapter à votre humeur ! king


Dernière édition par papydall le Mer 18 Fév 2015 - 0:47, édité 3 fois
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Klaus

Klaus


Nombre de messages : 12274
Age : 74
Localisation : Ile de France
Date d'inscription : 29/12/2009

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMer 18 Fév 2015 - 0:40

Super, Papydall.

Puis-je faire une suggestion ? Si, en plus de M ou N, on pouvait passer une chaîne de caractères contenant une valeur numérique entière, tu pourrais interpréter cela comme le numéro d'objet d'un LIST, DLIST, COMBO ou MEMO, et charger tout dedans l 'aide d'une série de ITEM_ADD, prédédée d'un CLEAR...

EDIT

C'est if numeric(output$)=1 qui donnera cette condition.
Objet devant exister bien sûr, à tester avec if object(val(output$))=1 ...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMer 18 Fév 2015 - 1:14

Klaus a écrit:
Puis-je faire une suggestion ? …

Tu es le maître et j’ai l’honneur d’être ton élève.

Je trouve que c’est une excellente idée que tu suggères.
J’ai enlevé le hide 0
J’ai ajouté memo 10 : full_space 10
Et à la fin, j’ai ajouté :  item_add 10,clipboard_string_paste$

Bienvenue aux autres suggestions/améliorations…

Vive Panoramic !
Vive le Forum !
Vive la communauté Panoramicienne !
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Klaus

Klaus


Nombre de messages : 12274
Age : 74
Localisation : Ile de France
Date d'inscription : 29/12/2009

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMer 18 Fév 2015 - 2:02

Tu vois, j'imaginais quelque chose comme ceci, avec "N", "M" ou str$(n%) au choix, pour la sortie:
Code:

rem ============================================================================
rem        Afficher la liste des fichiers modifiés aujourd hui
rem  dans le dossier transmis en paramètre ainsi que dans ses sous-dossiers
rem                      Par Papydall
rem  petit rajout par Klaus: déposer le résultat dans un objet Panoramic
rem ============================================================================
rem La sortie se fera selon le paramètre output$ soit dans un message
rem soit dans le bloc-notes.
rem Appel:
rem Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$,output$)
rem rep$ est le dossier (et ses éventuels sous-dossiers) sur lequel la sub va travailler
rem output$ est le paramètre pour la sortie du résultat:
rem Il prend les valeurs :
rem "m" ou "M" pour une sortie dans un message
rem "n" ou "N" pour une sortie dans le bloc-notes (notepad)
rem str$(n%)  pour une sortie dans un LIST, DLIST, COMBO ou MEMO
rem ============================================================================
' hide 0

' Adapter le chemin ...
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Users\acer\Desktop\panoramic","m")
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Windows\system32","n")
rem Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:","n")
memo 1 : full_space 1 : bar_both 1
 Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF","1")
end


rem ============================================================================
' Afficher la liste des fichiers modifiés aujourd'hui dans le dossier rep$ et
' ses sous-dossiers
' Vous pouvez choisir d'afficher la liste selon un tri :
' /o:n  <---- Nom (alphabétique)
' /o:s  <---- Taille (ordre croissant)
' /o:e  <---- Extension (alphabétique)
' /o:d  <---- Date et heure (chronologique)
' /o:g  <---- Répertoire
' /o:-  <---- Préfixe en ordre indirect
rem ============================================================================
SUB Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$,output$)
    dim_local out$,q$, objet%, s$
    q$ = chr$(34)
    if numeric(output$)=1
      objet% = val(output$)
      if object_exists(objet%)=0 then objet% = 0
    end_if
    if (upper$(output$) = "M") or (objet%>0)
      out$ = "| clip"
    else
      if upper$(output$) = "N"
          out$ = "> liste.txt"
      else
          message "Erreur sur la paramètre output$" : exit_sub
      end_if
    end_if
    application_title "Fichiers modifiés aujourd'hui dans : " +rep$
    execute_wait "cmd /c dir "+ chr$(34)+rep$ +"\*.*"+chr$(34)+" /s /o:n|find "+q$+"%date%"+q$+out$
    if (upper$(output$) = "M") or (objet%>0)
      s$ = clipboard_string_paste$
      if s$ = ""
          message "Aucun fichier n'a été modifié aujourd'hui" + chr$(13)+"dans le dossier : " +rep$
      else
          if objet%>0
            clear objet%
            item_add objet%,s$
          else
            message s$
          end_if
      end_if
    else
      execute "cmd /c start liste.txt"
    end_if
END_SUB
rem ============================================================================
J'ai d'ailleurs ajouté des str$(34) dans la construction de la commande DOS, pour pouvoir traiter des chemins contenant des espaces.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: re   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMer 18 Fév 2015 - 2:17

@ Papydall,

Doutes tu toujours de l' utilité et de l' intérêt de cette procédure ?.. Wink
Dès que tu la sens abouti, fais moi un zip et elle rejoindra ses copines sur le site.
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui EmptyMer 18 Fév 2015 - 5:32

Merci Klaus pour ta contribution pratique.
Voici le code légèrement retouché.

Code:

rem ============================================================================
rem        Afficher la liste des fichiers modifiés aujourd hui
rem  dans le dossier transmis en paramètre ainsi que dans ses sous-dossiers
rem                      Par Papydall
rem  petit rajout par Klaus: déposer le résultat dans un objet Panoramic
rem ============================================================================
rem La sortie se fera selon le paramètre output$ soit dans un message
rem soit dans le bloc-notes.
rem soit dans un objet panoramic
rem Appel:
rem Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$,output$)
rem rep$ est le dossier (et ses éventuels sous-dossiers) sur lequel la sub va travailler
rem output$ est le paramètre pour la sortie du résultat:
rem Il prend les valeurs :
rem "m" ou "M" pour une sortie dans un message
rem "n" ou "N" pour une sortie dans le bloc-notes (notepad)
rem str$(n%)  pour une sortie dans un LIST, DLIST, COMBO ou MEMO
rem ============================================================================

 memo 1 : full_space 1 : bar_both 1 : font_bold 1 : font_color 1,0,0,255
' Adapter le chemin ...
 Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Users\acer\Desktop\panoramic","1")
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:\Windows\system32","m")
' Afficher_Liste_Fichiers_Modifies_Aujourdhui("C:","n")
end
rem ============================================================================
' Afficher la liste des fichiers modifiés aujourd'hui dans le dossier rep$ et
' ses sous-dossiers
' Vous pouvez choisir d'afficher la liste selon un tri :
' /o:n  <---- Nom (alphabétique)
' /o:s  <---- Taille (ordre croissant)
' /o:e  <---- Extension (alphabétique)
' /o:d  <---- Date et heure (chronologique)
' /o:g  <---- Répertoire
' /o:-  <---- Préfixe en ordre indirect
rem ============================================================================
SUB Afficher_Liste_Fichiers_Modifies_Aujourdhui(rep$,output$)
    dim_local out$,q$, objet%, s$
    q$ = chr$(34)
    if numeric(output$)=1
       objet% = val(output$)
       if object_exists(objet%)=0 then objet% = 0
    end_if
    if (upper$(output$) = "M") or (objet%>0)
      out$ = "| clip"
    else
      if upper$(output$) = "N"
          out$ = "> liste.txt"
      else
          message "Erreur sur la paramètre output$" : exit_sub
      end_if
    end_if
    application_title "Fichiers modifiés aujourd'hui dans : " +rep$
    execute_wait "cmd /c dir "+ q$+rep$ +"\*.*"+q$+" /s /o:d|find "+q$+"%date%"+q$+out$
    if (upper$(output$) = "M") or (objet%>0)
      s$ = clipboard_string_paste$
      if s$ = ""
          message "Aucun fichier n'a été modifié aujourd'hui" + chr$(13)+"dans le dossier : " +rep$
      else
          if objet%>0
            clear objet%
            item_add objet%, "Liste des fichiers modifiés aujourd'hui : " + date$
            item_add objet%,"Dans le dossier : " + rep$ + " et ses éventuels sous-dossiers"
            item_add objet%,"" : item_add objet%,s$
          else
            message s$
          end_if
      end_if
    else
      execute "cmd /c start liste.txt"
    end_if
END_SUB
rem ============================================================================

Qui d’autre veut laisser son empreinte sur cette SUB ?
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé





fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty
MessageSujet: Re: Afficher la liste des fichiers modifiés aujourd'hui   fichiers - Afficher la liste des fichiers modifiés aujourd'hui Empty

Revenir en haut Aller en bas
 
Afficher la liste des fichiers modifiés aujourd'hui
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Afficher la liste des variables d'environnement
» Liste (et choix) des fichiers d'un répertoire
» Cards.dll pour afficher un jeu de 52 cartes
» Afficher correctement une image JPEG
» Afficher des icônes et des boutons personnalisés

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: