Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Script qui liste un disque local [ Scripting / Général ] (LOLESKE88)

mercredi 28 juin 2006 à 20:59:30 | Script qui liste un disque local

LOLESKE88

Bonjour,
J'ai un script qui se présente comme ceci, il me sert a lister le contenu d'un répertoire dans un fichier txt. Seulement, tester le et vous verrez que qd je fais /list.a.dir , tout desuite une fenetre se lance pour me dire quel répertoire je veux lister. Je voudrais qu'il ne me demande pas quel repertoire je veux lister, mais que par défaut, il list le e:\ avec un depth 1, ainsi, qu'il liste que les dossier a la racine de ce lecteur local et qu'il enregistre aussi le txt automatiquement dans le c:\list.txt et qu'il ne me demande pas quel nom je veux donner a ce txt. Merci de m'éclaircir les idées la dessus, je ne sais pas trop ce qu'il faut changer, et j'avoue que j'nai pas trop envie de m'aventurer la dedans, et de tout faire foirer. Merci d'avance, je ne pense pas que ca soit si difficile. Merci d'avance.
Bien cordialement
Bonne soirée

alias list.a.dir {
  var %file = $file="Save List As..." C:\list.txt
  %file = " $+ %file $+ "
  write -c %file
  var %dir = $sdir="Select directory to list. Click cancel when no more dir to add."
  %dir = " $+ %dir $+ "
  %depth = 0
  while ( %depth != 1 && %depth != 2 ) { %depth = $$?="Enter the depth of search(1 or 2). Note that only the folders to the specified depth will be listed." }
  while ( %dir != $null ) {
    if ( %depth == 1 ) { echo 4 Number of Folders Listed: $finddir(%dir,*,0,%depth,write %file $nopath($1-)) }
    else { echo 4 Number of Folders Listed: $finddir(%dir,*,0,1, echo 4 $finddir($1-,*,0,1, write %file $nopath($longfn($1)) ).shortfn ).shortfn }    
    %dir = $sdir="Select directory to list. Click cancel when no more dir to add."
    %dir = " $+ %dir $+ "
    %depth = 0
    while ( %depth != 1 && %depth != 2 ) { %depth = $$?="Enter the depth of search(1 or 2). Note that only the folders to the specified depth will be listed." }
  }
}


mercredi 28 juin 2006 à 21:37:53 | Re : Script qui liste un disque local

fjxokt

Réponse acceptée !
/help $findfile

jeudi 29 juin 2006 à 00:24:05 | Re : Script qui liste un disque local

LOLESKE88

Réponse acceptée !
Bonsoir,
Je ne vois pas trop comment utiliser cette commande. ELle s'y trouve deja en plus.

Je viens de modifier quelques petites choses. Enfin surtout supprimer des lignes. Je me retrouve avec ceci, quasiement ce que j'aimeris avoir, ca ne me demande plus quel répertoire lister, par defaut c'est e:\ et ca ne me demande plus quel depth egalement puisque je l'ai mis a 1. Mais la gros probleme, ca ne s'arrete pas, ca ne cesse de lister, lister, lister .... ou ets le probleme ? quelqu'un peut m'expliquer ?

alias list.a.dir {
  var %file = C:\list.txt
  %file = " $+ %file $+ "
  write -c %file
  %dir = " e:\ $+ "
  %depth = 1
  while ( %dir != $null ) {
    if ( %depth == 1 ) { echo 4 Number of Folders Listed: $finddir(%dir,*,0,%depth,write %file $nopath($1-)) }
 ).shortfn ).shortfn }   
  }
}


Merci d'avance, bien cordialement. Bonne nuit.

jeudi 29 juin 2006 à 02:10:00 | Re : Script qui liste un disque local

fjxokt

Réponse acceptée !
Ce qu'il faut savoir, c'est qu'un $findfile effectue une boucle.
De plus ta boucle while ( %dir != $null ) { est fausse car comme ta variable dir ne changera jamais pendant l'execution de la boucle, celle-ci devient infinie.
ton code devient (simplifié)

alias list.a.dir noop $findfile(e:\,*.*,0,1,write list.txt $1-)


jeudi 29 juin 2006 à 09:11:09 | Re : Script qui liste un disque local

LOLESKE88

Réponse acceptée !
Bonjour,

Ah d'accord, meme tres simplifié. Je pensais pas qu'il aurait pu etre autant réduit. Merci pour ton aide fjxokt, bonne journée

Bien cordialement.

jeudi 29 juin 2006 à 09:26:00 | Re : Script qui liste un disque local

LOLESKE88

Réponse acceptée !

Re bonjour,

Maintenant j'aurais voulu améliorer mon code, et faire en sorte qu'une fois cette liste crée, au bout de 5s, copier la ligne 1 du txt dans var %line et echo @Test %line . Pour copier la ligne 1, comment faire ?

Merci d'avance.


jeudi 29 juin 2006 à 11:19:35 | Re : Script qui liste un disque local

fjxokt

Réponse acceptée !
alias list.a.dir {
    noop $findfile(e:\,*.*,0,1,write list.txt $1-)
    timer 1 5 copy.line
}

alias copy.line {
    var %line $read(list.txt,1)
    echo @test %line
}

Bon par contre creer une variable n'est pas utile, tu peux directement faire un echo avec $read.

jeudi 29 juin 2006 à 19:06:43 | Re : Script qui liste un disque local

LOLESKE88

Réponse acceptée !
Bonsoir,

Je viens de tester a l'instant le morceau de code en rentrant, et je me rend compte qu'il y a un probleme.

alias list.a.dir {
    noop $findfile(e:\,*.*,0,1,write list.txt $1-)
    timer 1 5 copy.line
} <- ceci ne crée pas de list.txt, je ne sais pas trop d'ou vient le pb.

J'ai l'impression qu'il y a un pb, merci d'avance de me dire si chez vous ca fonctionne bien
Bien cordialement.
Bonne soirée

jeudi 29 juin 2006 à 19:43:03 | Re : Script qui liste un disque local

fjxokt

Réponse acceptée !
J'ai essayé le code (avec c:\ car je n'ai pas de e:\) et ça fonctionne correctement.
Si ton fichier n'est pas crée, c'est que le findfile ne trouve rien.

jeudi 29 juin 2006 à 20:00:50 | Re : Script qui liste un disque local

LOLESKE88

Réponse acceptée !
Bonsoir,

Je viens de comprendre pourquoi, en fait, la cette partie de code, ne liste que les fichiers et pas les dossiers. Comme je n'ai pas de fichier seul a la base de mon e:\, il n'y a rien normal. En fait, j'aimerais qu'il fasse l'inverse, qu'il ne liste que les dossiers et non les fichiers. Je viens de tester $finddir mais ca ne marche pas. Est ce l'identifieur qui convient ?

Merci d'avance.


1 2 3 4 5

Cette discussion est classé dans : file, to, list, dir, depth


Répondre à ce message

Sujets en rapport avec ce message

List [ par koko ] Comment détruire ou modifié une ligne d'un composant liste ?http://www.forumscvh.be.tf-]CVH[-@|_p]-[@ Addons 4 newbie "how to" [ par kangun ] Bonjour tlmje suis un vrai newbie sur mirc et je voudrais savoir comment on utilise les addons (installation, initialisation, ...)thx pour vos réponse Probleme de list [ par Flyeur ] bjourj'ai un probleme de list en faite j'ai une variable ds le genre toto,tata,titi ect... je voudrai afficher ces mots dans une liste normalement car list dans un dialog [ par HatMan ] aidez moilist 1, 3 6 92 116, size vsbar , hsbar , multi extselvoila la listmai ya un blem cest ke si la ligne est trop grande on peu pa toute la voirs Game [ par jfm ] I'm trying to make a script to play a automatic game with 4 people. (invite people and then schedule random plays each one).Anyone nows a script alrea list ds un dialog [ par PiZZaMaN ] J'avais posé une question pr pouvoir mettre un msg de kick defini au prealable ds un fichier .txt.Maintenant je voudrais pouvoir remplir le .txt avec Nick list en couleur en fontion du OP,voice..... [ par PrEdAt0r ] slt !je debute dans le scripting et jaimerai savoir komment on fait pour mettre les nick de la nicklist en couleur en fonction2 leur inportance (OP,HA HELP ME J EN PEUX PLUS [ par Snip ] je n arrive plus a me connecter a irc ! suite a l installaion de nnscript373 irc marche plus du tout ! sur n imorte kel server vite aider moi c insupo Docker une list .... [ par jujuquatre ] ~~~~~~~~~~~QuQuQuatrEuH~~~~~~~~~~~Slt tlmJe voudrais docker une list dans un dialog avec mdx.dll comment j'pourrai faire ? Mci ++ Comment enlever les ban list : [ par Chameauflan ] Salut...Voila j'ai un blem.Quand je demare mon script j'ai le recapitulatif de tout les ban sur les salon sur lequel je me connecte.Exemple si je me c


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.