OVH Cloud OVH Cloud

pb de FOR...

6 réponses
Avatar
Gael
Bonjour,

Dans le script suivant j'ai l'erreur "FIND : format incorrect de
param=E8tre"

Je ne sais pas comment d=E9finir la variable "a" apr=E8s le find /l ...


=3D=3D=3D=3D=3D=3D=3D=3D=3D
@echo off


for %%a IN (notepad wordpad) DO tlist | find /I %%a > D:\temp\tmp.txt
for /F "tokens=3D1,2" %%i in (D:\temp\tmp.txt) do (echo %%j)

pause
=3D=3D=3D=3D=3D=3D=3D=3D
Merci :)

6 réponses

Avatar
Gilles LAURENT
"Gael" a écrit dans le message de
news:
| Bonjour,

Bonjour,

| Dans le script suivant j'ai l'erreur "FIND : format incorrect de
| paramètre"
|
| for %%a IN (notepad wordpad) DO tlist | find /I %%a > D:temptmp.txt
| for /F "tokens=1,2" %%i in (D:temptmp.txt) do (echo %%j)

for %%a in (notepad wordpad) do tlist | find /i "%%a" >> d:temptmp.txt
for /f "tokens=1,2" %%i in (d:temptmp.txt) do echo %%i %%j

--
Gilles LAURENT
http://glsft.free.fr
Avatar
Gilles LAURENT
"Gilles LAURENT" a écrit dans le message de
news:
| for %%a in (notepad wordpad) do tlist | find /i "%%a" >>
| d:temptmp.txt for /f "tokens=1,2" %%i in (d:temptmp.txt) do echo
| %%i %%j

La version PowerShell ;-)

gps notepad,wordpad | %{write-host $_.name $_.id}

--
Gilles LAURENT
http://glsft.free.fr
Avatar
Jacques Barathon [MS]
"Gilles LAURENT" wrote in message
news:%
<...>
La version PowerShell ;-)

gps notepad,wordpad | %{write-host $_.name $_.id}


On écrira même plutôt:

gps notepad,wordpad | ft name,id -a

... "ft" étant l'alias pour format-table, et "-a" étant un raccourci pour le
paramètre -auto qui ajuste automatiquement la taille des colonnes selon le
contenu.

Jacques

Avatar
Gael
Merci pour vos réponses!
pour powershell on oublie... je n'ai pas le choix ;)

par contre pour la proposition de Gilles, dans la liste des process a
tester, il ne me retourne que le dernier seulement (si lancé)

ex: IN (notepad wordpad) => si wordpad est lancé, il m'indique wordpad
sinon rien
IN (wordpad notepad) => inversement! si notepad est lancé, notepad
indiqué mais sinon rien


????




"Gael" a écrit dans le message de
news:
| Bonjour,

Bonjour,

| Dans le script suivant j'ai l'erreur "FIND : format incorrect de
| paramètre"
|
| for %%a IN (notepad wordpad) DO tlist | find /I %%a > D:temptmp.txt
| for /F "tokens=1,2" %%i in (D:temptmp.txt) do (echo %%j)

for %%a in (notepad wordpad) do tlist | find /i "%%a" >> d:temptmp.txt
for /f "tokens=1,2" %%i in (d:temptmp.txt) do echo %%i %%j

--
Gilles LAURENT
http://glsft.free.fr


Avatar
Gael
woups!?

il manquait le double >> ... désolé! :)

Merci



Merci pour vos réponses!
pour powershell on oublie... je n'ai pas le choix ;)

par contre pour la proposition de Gilles, dans la liste des process a
tester, il ne me retourne que le dernier seulement (si lancé)

ex: IN (notepad wordpad) => si wordpad est lancé, il m'indique wordpad
sinon rien
IN (wordpad notepad) => inversement! si notepad est lancé, notepad
indiqué mais sinon rien


????




"Gael" a écrit dans le message de
news:
| Bonjour,

Bonjour,

| Dans le script suivant j'ai l'erreur "FIND : format incorrect de
| paramètre"
|
| for %%a IN (notepad wordpad) DO tlist | find /I %%a > D:temptmp.txt
| for /F "tokens=1,2" %%i in (D:temptmp.txt) do (echo %%j)

for %%a in (notepad wordpad) do tlist | find /i "%%a" >> d:temptmp.txt
for /f "tokens=1,2" %%i in (d:temptmp.txt) do echo %%i %%j

--
Gilles LAURENT
http://glsft.free.fr




Avatar
Jacques Barathon [MS]
Normal, la redirection est précisée avec ">" qui écrase le fichier s'il
existait déjà. Or, ta boucle provoque deux écritures distinctes, donc un
écrasement du premier fichier par le deuxième.

Remplace ">" par ">>", tu devrais voir les deux process.

Jacques

"Gael" wrote in message
news:

Merci pour vos réponses!
pour powershell on oublie... je n'ai pas le choix ;)

par contre pour la proposition de Gilles, dans la liste des process a
tester, il ne me retourne que le dernier seulement (si lancé)

ex: IN (notepad wordpad) => si wordpad est lancé, il m'indique wordpad
sinon rien
IN (wordpad notepad) => inversement! si notepad est lancé, notepad
indiqué mais sinon rien