J'écris du code Java qui doit être capable d'écrire un fichier pid sur Unix-like ainsi que sur des machines Windows. Sur les machines unix j'écrire un script shell bash qui contient quelque chose comme çaComment écrire un fichier pid dans un fichier batch Windows
command 1>/dev/null 2>&1 &
echo $! > pidfile
Il exécute une commande, redirige toutes les sorties en Nirwana et met la commande en arrière-plan (il se détache de la coquille). Le fichier pid contient l'identifiant du processus de la commande. Je peux ensuite aller lire l'identifiant du processus dans le fichier. Tout fonctionne bien.
maintenant sur Windows, je pense que je devrais faire quelque chose comme
start command
et en quelque sorte l'équivalent de la manière Unix. Le problème est que je n'ai aucun contrôle là où le programme sera utilisé en termes de version de Windows ou ce qui est installé sur la machine. Je n'ai pas non plus accès à une machine Windows pour tester les choses et je n'ai rien trouvé de simple sur le web. Je sais qu'il y a la fonction get-process dans powershell mais je ne sais pas si powershell sera installé sur la machine donc je ne peux pas compter sur ça.
Existe-t-il une commande ou une syntaxe de fichier batch DOS simple qui répond à mes besoins?
L'utilisez-vous pour bloquer ou tuer? –
Je dois être capable de tuer la commande indépendamment plus tard. Ce sera un nouveau démarrage d'une machine virtuelle Java, donc pas de mise en cache interne de Java ou quoi que ce soit d'autre. –