A l'aide !! Je ne suis pas développeur

Résolu
l0204700 Messages postés 4 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 15 février 2011 - 14 févr. 2011 à 11:37
l0204700 Messages postés 4 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 15 février 2011 - 15 févr. 2011 à 17:47
Bonjour à tous,

J'ai besoin de l'aide d'une âme charitable qui aurait pitié d'un non développeur (et oui, personne n'est parfait !!!).

J'expose mon soucis :

J'ai besoin d'un code qui me permettrait de supprimer tous les fichiers créés le jour même dans un répertoire bien précis (fichiers créés sur le bureau le jour même).

Merci d'avance.

8 réponses

jibob Messages postés 59 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 4 juillet 2013
14 févr. 2011 à 19:03
Bonjour,

Comme je ne contribue pas souvent, il est logique d'apporter gratuitement à d'autres alors que j'ai personnellement tant consulté ce site.
Merci encore à Nix et à tous ceux qui font vivre ce site.

Fabien, pour résoudre ton problème créer un fichier de type texte nommé effacement.txt (peu importe le nom)

Y copier le code ci-dessous (à partir de la ligne Option Explicit
) en personnalisant la chaine codant le chemin complet du répertoire situé sur le bureau par exemple (conserver impérativement entre guillements)

Puis renommer ce fichier en effacement.vbs

VBS pour vbscript, en double cliquant dessus, ton voeu va s'exaucer.

Cordialement

' -------------------------------------------
Option Explicit

const chemin = "C:\Documents and Settings\USER1\Bureau\monrepertoire"

Dim fso, f, monrep
Dim datejour

Set fso=WScript.CreateObject("Scripting.FileSystemObject")
Set monrep=fso.GetFolder(chemin)
' on gere la date du jour comme une chaine et sans heure
datejour=left(now,instr(now," "))

' enumere les fichiers du repertoire
For Each f In fso.GetFolder(chemin).Files
' efface le fichier si egalite avec la date du jour
if left(f.DateLastModified,instr(f.DateLastModified," ")) = datejour then
fso.DeleteFile f.path,true
end if
Next
3
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
15 févr. 2011 à 16:28
ouh laaaaa !

je vien de remarquer un truc la :

for /f "skip=4 tokens=2* delims=:" %%i in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Desktop') do set chemin=%chemin%:%%i\

est et doit etre une seul et même ligne
l'editeur du forum na pas aimer la longueur de cette ligne

pour eviter le pb voici une version un peu differente:

@echo off

set NbDelFile=0
set chemin=%userprofile:~0,1%
set RegKey=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders

for /f "skip=4 tokens=2* delims=:" %%i in ('reg query "%RegKey%" /v Desktop') do set chemin=%chemin%:%%i\

echo Recherche des fichiers crees le %date%, dans le repertoire
echo %chemin%
echo.

for /f "tokens=*" %%i in ('Dir "%chemin%*.*" /a:-d /O:-d /t:c ^| findstr /i /m %Date%') do call :RecupNomFichier "%%i"

echo.
if %NbDelFile%==0 echo Aucun fichier trouve ! & goto :end
if %NbDelFile% GTR 1 (echo %NbDelFile% fichiers on ete effaces.) else echo %NbDelFile% fichier a ete efface.

goto :end

:RecupNomFichier
echo %~1
for /f "tokens=4* delims= " %%j in ('"echo %~1"') do call :OnEfface "%%j %%k"
goto :eof

:OnEfface
set /a NbDelFile=%NbDelFile%+1
echo %~1 %~2
rem del "%chemin%%~1 %~2"
goto :eof

:end
pause > nul



a+
3
jeffwow Messages postés 140 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 5 septembre 2014 1
14 févr. 2011 à 15:10
Si j'étais toi, je me retournerais plutôt du côté des sites de freelances... Tu peux toujours me contacter par message privé, ce n'est pas très compliqué à faire, mais en même temps, pas gratuit...

C'est comme d'arriver au garage et de dire au mécanicien: à l'aide je n'y connais rien en mécanique! J'ai besoin d'une âme charitable pour changer mes freins!
0
l0204700 Messages postés 4 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 15 février 2011
15 févr. 2011 à 09:43
Merci beaucoup de ton aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
15 févr. 2011 à 13:29
Salut,

pareil que l'ami jibob ! du coup je te propose une autre méthode

voici une autre méthode qui s'appuie sur les Cmd du Dos... au risque d'en choquer quelques-uns.b

à coller dans un fichier .bat

@echo off

set NbDelFile=0
set chemin=%userprofile:~0,1%

for /f "skip=4 tokens=2* delims=:" %%i in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Desktop') do set

chemin=%chemin%:%%i\

echo Recherche des fichiers crees le %date%, dans le repertoire
echo %chemin%
echo.

for /f "tokens=*" %%i in ('Dir "%chemin%*.*" /a:-d /O:-d /t:c ^| findstr /i /m %Date%') do call :RecupNomFichier "%%i"

echo.
if %NbDelFile%==0 echo Aucun fichier trouve ! & goto :end
if %NbDelFile% GTR 1 (echo %NbDelFile% fichiers on ete effaces.) else echo %NbDelFile% fichier a ete efface.

goto :end

:RecupNomFichier
echo %~1
for /f "tokens=4* delims= " %%j in ('"echo %~1"') do call :OnEfface "%%j %%k"
goto :eof

:OnEfface
set /a NbDelFile=%NbDelFile%+1
echo %~1 %~2
rem del "%chemin%%~1 %~2"
goto :eof

:end
pause > nul


A+
0
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
15 févr. 2011 à 14:11
ah oui j'ai oublié de préciser que pour ne pas effacer mes fichiers pendant les tests de ce script,

j'ai mis la ligne qui supprime les fichiers en commentaire. Donc il faut enlever le "rem" de la ligne:

rem del "%chemin%%~1 %~2"

A+
0
l0204700 Messages postés 4 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 15 février 2011
15 févr. 2011 à 14:26
merci pour votre aide, je savais que je pouvais compter sur ce forum

Je teste les deux solutions et je vous tiens au courant

A+
0
l0204700 Messages postés 4 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 15 février 2011
15 févr. 2011 à 17:47
Merci bigfish,

Je viens de tester ta deuxième version, que du bonheur, le bureau est tout propre.

En plus, je comprends un peu mieux ce que ça veut dire en cmd, j'ai même osé une folie, j'ai supprimé la pause à la fin du script

Si jamais je peux aider, je suis un peu moins nul dans le domaine de la sécurité (crypto, chiffrement, smartcard, sso, ...), dans les solutions antivirus et tout ce qui tourne autour de l'AD et des GPO.

Encore merci à tous pour votre aide.

A+
0
Rejoignez-nous