Ho questo comando wmic che scopre il PID del mio processo e funziona benissimo da cmd, ma rifiuta di produrre output quando eseguito in un file bat:
wmic /output:process.pid process where (Name like '%java%' and commandLine like '%part-of-the-path%') get ProcessId
Quando lo eseguo da cmd, produce un file contenente
ProcessId
19352
Le informazioni sono seguite da due righe vuote. Quando lo eseguo da un file batch, produce solo un file con due righe vuote.
Ho provato /output:filename
, > filename
e | more > filename
, tutte con lo stesso risultato.
Perchè è questo? Come fare in modo che il comando produca output dal batch?
%java%
non è impostato in anticipo. Come SQL, wmic lo usa come un asterisco corrispondente a qualsiasi testo. Non voglio che il batch interpreti la stringa, ma la do a wmic così com'è. La soluzione di @Sandeep sembra funzionare.
%
con%%
?%jave%
al prompt dei comandi deve essere%%java%%
in un file batch.