Commande batch convertie en java

Résolu/Fermé
N - Modifié le 13 nov. 2017 à 11:05
Whismeril
Messages postés
17659
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
13 août 2022
- 16 nov. 2017 à 11:52
Bonjour,


Voila, je souhaiterais convertir des commandes batch en java, par exemple:

SYSTEMINFO

echo

pause<nul

@echo off

title

:main

set mainput=0

chcp 65001 > nul

etc....



sauriez vous comment faire cela SVP ?

merci




2 réponses

KX
Messages postés
16584
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 août 2022
2 972
13 nov. 2017 à 11:23
Bonjour,

Et qu'est-ce que c'est censé faire (pour ceux qui connaissent pas Batch) ?
0
Bonjour,

echo correspond à de l'affichage de texte

pause<nul met sur pause l'afichage du texte

title correspond au titre du fichier

chcp 65001 > nul affichage des carracteres éèÉ ect...

merci
0
KX
Messages postés
16584
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 août 2022
2 972
13 nov. 2017 à 13:25
Et donc le programme Java doit faire quoi ?

Afficher "éèÉ" ?
0
Bonjour,


en fait, je voudrait traduire (convertir) un script batch en java par exemple:

@echo off
::titre du script
title test
::nom de la fenêtre
:main
set mainput=0
::affichage des caractères
chcp 65001 > nul
::couleurs de fond et de police
color 0B
echo tappez 1
:: pour tappez 1 et acceder à fenêtre
set /p mainput=
if "%mainput%"=="1" goto info system
:info system
::commande pour avoir informations sur PC
SYSTEMINFO
Pause> nul


vous pouvez tester ce script sur votre PC -(notepad++ ou CMD , les deux fonctionnent )pour avoir une idée de ce que je cherche à obtenir

pour optenir un résultat similaire sur console en java
ese possible par hasard svp ?

tout ce que j'arrive à faire c'est ca et ce n'est pas ce que je cherche à obtenir:

 try {
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler "+"C:\\Windows\\System32\\systeminfo.exe");
} catch (IOException ex) {
Logger.getLogger(Info_PC.class.getName()).log(Level.SEVERE, null, ex);
0
Whismeril
Messages postés
17659
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
13 août 2022
850
13 nov. 2017 à 14:37
Salut kx,

Dans sa question précédente, je lui ai fait ce conseil
Par contre, je te déconseille fortement de transcrire bêtement ligne par ligne ce que fait le batch.
Chaque langage a ses spécificités, sa "philosophie". Il faut donc bien cerner à quoi sert le batch (et par forcement comment il le fait) et écrire un nouveau programme qui répond au besoin (pas forcément de la même manière que le batch)

Manifestement il n’a pas compris.
0
Bonjour whismeril,

ce que je cherche, ce n'est pas de convertir bêtement le script, c’est la manière dont je pourrait exécuter une commande DOS dans un script java

cordialement
0
donc pour taper une commande dos il me suffit de tapper tel systeminfo par exemple pour éxecuter la commande?


si je fais cela, il vas m'ouvrir cmd puis systeminfo.exe ou dirrectement systeminfo dans le script écrit ?

Merci
0
Whismeril
Messages postés
17659
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
13 août 2022
850
14 nov. 2017 à 14:05
Oui ça exécute cmd, je te l'ai déjà dit.
Donc ça n'est pas la bonne approche.
Il ne faut pas que tu cherches à faire une commande, mais que tu cherches à répondre au besoin du script. Et ça aussi je te l'ai déjà dit.
0
Whismeril
Messages postés
17659
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
13 août 2022
850
14 nov. 2017 à 14:06
Pour C#, pour Java je ne sais pas
0
oui mais dans ce cas, je suis dans une impasse car je suis obligé d'utiliser des commandes DOS

alors dans ce cas, connaitriez-vous un terminal (émuareur par exemple) qui ne lancerait pas bash.exe ou cmd.exe par hazard (ou meme une autres solutions) svp ?

l'important et de pouvoir lancer des commande DOS sans utiliser cmd.exe ou bash.exe

merci
0
Whismeril
Messages postés
17659
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
13 août 2022
850
14 nov. 2017 à 16:41
Mais tu lis les réponses qu'on te fait?

Si tu demandes à un ouvrier du 19eme siècle de te creuser un trou, il va prendre une pelle et une pioche, si tu demandes à un ouvrier d'aujourd'hui il prendra un tractopelle.
Par contre si tu leur demandes de sculpter une petite statue de bois, ils prendront tous les deux un ciseau à bois.

En informatique, c'est pareil la solution technique disponible n'est pas toujours la même d'un langage à un autre.
KX t'as dit qu'il y aura peut être une dll (ou une combinaison) permettant de correspondre à l'utilité du script en Java, je te dit la même chose en C#.
Donc au lieu de t'obstiner à demander "comment j'exécute systeminfo en Java ou en C#", définit à quoi sert le script, et pas juste cette ligne, et demande de l'aide pour le besoin complet.
0
KX
Messages postés
16584
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 août 2022
2 972
14 nov. 2017 à 17:39
Hier (#8)
"il s'agit d'une restriction, je ne peut pas utiliser des langage de commande"

Aujourd'hui (#17)
"je suis dans une impasse car je suis obligé d'utiliser des commandes DOS"

Vivement demain...
0