2012-07-30 19 views
5

Provare a testare una stringa per verificare se contiene una sottostringa in un file batch di Windows.File batch di Windows - pipe to FIND

Questo è quello che ho finora:

echo %1 | find "message" 
if %errorlevel% == 0 echo contains string 

L'output della riga di comando per questo è (il contenuto di% 1 è stato "messaggi \ Message.js"):

 
messages\Message.js 
contains string 

I problema che sto avendo è che l'unico modo per farlo funzionare è con la riga esatta: echo %1 | find "js".

Come posso fare questo senza echoare il percorso del file ogni volta? Quando rimuovo lo echo, il sistema operativo tenta di aprire il file. Mi piacerebbe salvare il percorso del file su una variabile, ma nulla di ciò che ho provato ha funzionato, ho sempre trovato una variabile vuota.

risposta

4
echo %1 | find "message" > NUL 
    if %errorlevel% == 0 echo contains string 
Problemi correlati