@SEARCH[program[,path[,n]]] : recherche un programme en utilisant le chemin spécifié  ou, s'il n'est pas spécifié, la  variable d'environnement PATH, en ajoutant une extension si elle n'est pas spécifiée. (Voir Fichiers exécutables et recherches de fichiers pour plus de détails sur les extensions par défaut utilisées lors de la recherche dans PATH, l'ordre dans lequel la recherche est effectuée et la recherche dans les  répertoires \WINDOWS et \WINDOWS\SYSTEM ).  Renvoie le nom complet du programme, y compris le lecteur, le chemin d'accès, le nom de base et l'extension, ou une chaîne vide si aucune correspondance n'est trouvée. Si des caractères génériques sont utilisés dans le programme, @SEARCH recherche le premier fichier du programme qui correspond à la spécification du caractère générique et renvoie le lecteur et le chemin d'accès de ce fichier ainsi que le nom du fichier générique (par exemple, E:\UTIL\*.EXE).

 

@SEARCH prend en charge les expressions régulières dans le programme.

 

Le programme et chaque spécification de répertoire dans le chemin doivent être placés entre guillemets s'ils contiennent des espaces blancs ou des caractères spéciaux. @SEARCH ajoute des guillemets au résultat s'il contient des espaces blancs ou des caractères spéciaux.

 

@SEARCH accepte un troisième paramètre facultatif indiquant s'il faut effectuer une recherche dans le répertoire actuel. Si n est égal à 0, @SEARCH ne recherchera pas le fichier dans le répertoire actuel. Si n est égal à 1 (valeur par défaut), @SEARCH recherchera le fichier dans le répertoire actuel avant d'effectuer une recherche dans le chemin d'accès.

 

Exemples :

 

echo %@search[notepad]

"C:\Windows\system32\notepad.exe"

 

echo %@search[msv*.dll,"d:\my dir\"]

"D:\my dir\test\msvc.dll"