Commande Find dans DOS

NkRedoxx Messages postés 75 Statut Membre -  
NkRedoxx Messages postés 75 Statut Membre -
Bonjour j'ai un petit problème lorsque que lance une recherche find sur mon disque D j'aimerais récupérer une ligne ou il y a inscrit octets mais le problème est qu'il y en a plusieurs. Est-ce que je peux recuperer une ligne spécifique ? Il y a environ une dizaine de résultat et je souhaiterais récupérer juste l'avant dernière ligne ! merci d'avance

dir d:\zinfo /s | find "octets">>d:\script\VolumeDisqueG.txt

1 réponse

  1. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    hello
    on récupère la dernière ligne que se termine par octets
    C:> dir /s | find "octets"
    26 fichier(s) 2 455 197 octets
    31 fichier(s) 3 537 393 octets
    23 fichier(s) 19 451 904 octets
    7 fichier(s) 16 319 octets
    0 fichier(s) 0 octets
    87 fichier(s) 25 460 813 octets
    14 Rép(s) 94 462 062 592 octets libres

    C:> for /F "delims=" %a in ('dir /s ^| findstr "octets$" ') do @set o=%a
    C:> echo %o%
    87 fichier(s) 25 460 813 octets
    0
    1. NkRedoxx Messages postés 75 Statut Membre
       
      Okay d'accord merci ! et si jamais j'aimerais faire ceci (zinfo est un nom de dossier):
      dir:\zinfo /s 

      Dans ce cas j'aimerais récupérer l'avant dernière ligne est ce possible ? Avec ton code j'ai une erreur :

      C:\WINDOWS\system32>for /F "delims=" %a in ('dir /s ^| findstr "octets$" ') do @
      set o=%a

      C:\WINDOWS\system32>%o%
      '18134' n'est pas reconnu en tant que commande interne
      ou externe, un programme exécutable ou un fichier de commandes.


      Merci, Cordialement
      0
    2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
       
      il manque echo
      for /F "delims=" %a in ('dir /s \zinfo /s ^| findstr "octets$" ') do @set o=%a
      echo %o%
      0
    3. NkRedoxx Messages postés 75 Statut Membre
       
      Ah oui je n'avais pas vu escusez moi !
      ça fonctionne nickel je vous remercie pour votre aide et vous souhaite une bonne et agréable journée
      Cordialement,
      0
    4. NkRedoxx Messages postés 75 Statut Membre
       
      Est-ce que vous seriez pourquoi j'ai un message d'erreur lorsque je fais ce script :

      rem @echo off
      
      echo.>>d:\script\VolumeDisqueG.xls
      echo Le %date% a %time% :>>d:\script\VolumeDisqueG.xls
      chkdsk d: | find "Ko disponibles">>d:\script\VolumeDisqueG.xls
      dir d:\zinfo /s 
      for /F "delims=" %a in ('dir /s d:\zinfo /s ^| findstr "octets$" ') do @set o=%a 
      echo "%o%">>d:\script\VolumeDisqueG.txt
      




      Voici mon erreur a partir de la ligne
      dir d:\zinfo /s



      C:\WINDOWS\system32>dir d:\zinfo /s
      ............
      \zinfo était inattendu.

      C:\WINDOWS\system32>for /F "delims=" \zinfo /s ^| findstr "octets$" ') do @set o
      =a


      Cordialement,
      0
    5. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
       
      interactivement, on utilise %a, dans un .bat, il faut utiliser double %
      for /F "delims=" %%a in ('dir /s d:\zinfo /s ^| findstr "octets$" ') do @set o=%%a 
      0