9
votes

Passez plusieurs paramètres à ProcessBuilder avec un espace

Je voudrais transmettre plusieurs paramètres à un processus de processus et les paramètres à séparer par un espace.

Voici la commande, xxx p> J'ai besoin de fournir Un espace après "FCRC" et après "-P" et entre "nom de fichier" et "adresse" ".

merci


0 commentaires

3 Réponses :


26
votes

Vous n'avez pas besoin d'inclure des espaces. Le processus de processus traitera de cela pour vous. Il suffit de transmettre vos arguments un par un, sans espace: xxx


2 commentaires

Ya c'est correct mais l'exe CRC que l'utilisation de la messagerie instantanée nécessite un espace entre le CRC et le nom de fichier et les gammes d'adresses passés, sinon elle jette une exception non trouvée.


@mee êtes-vous sûr que l'erreur "Fichier introuvable" n'est pas causée par autre chose? Si vous utilisez un chemin relatif comme nom de fichier , vous devez probablement définir le répertoire de travail correct pour le processus (en utilisant pb.directory (...) avant Vous appelez pb.start () )



12
votes

Nous avons besoin d'espaces entre les arguments dans CommandLine, car la ligne de commande doit savoir quel premier argument, qui est le second et ainsi de suite. Cependant, lorsque nous utilisons ProcessBuilder Code>, nous pouvons transmettre un tableau à ce sujet. Nous n'avons donc pas besoin d'ajouter ces espaces pour différencier les arguments. Le processus de processus transmettra directement la matrice de commande au exécuté code> après une vérification. Par exemple,

ProcessBuilder processBuilder = new ProcessBuilder("command", "The first argument", "TheSecondWithoutSpace");


0 commentaires

-4
votes

Utilisez-le comme ceci:

nouveau java.lang.processBuilder ('netstat -an'.tostring (). Split (' \\ s ')))) Démarrer ()


3 commentaires

Dans Java ' est utilisé pour un seul caractère, pas une chaîne


Pourquoi ai-je reçu des votes en panne, ce que les diameurs? Vous n'avez pas utilisé de Webshell JSP avec 1 paramètre qu'il semble, allez continuer, utilisez ce cmd_array , maintenant et dites-moi, allez-vous passer un certain nombre de paramètres basés sur la commande que vous souhaitez exécuter ¿? Ne me fais pas de me faire rire ...... ces votes en panne que j'ai reçus devraient être l'autre sens autour de omg!


Ce message est de plusieurs mois mec. De plus, votre code ne compile pas, c'est peut-être la raison pour laquelle votre pot a été évité.