|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2006
Città: Lassù
Messaggi: 2842
|
[JAVA] inputstream e outputstream di un processo
Ciao a tutti,
dovrei simulare la gestione dell'input e output di una shell. Codice:
Process proc=Runtime.getRuntime().exec("cmd");
OutputStram output = proc.getOutputStream();
InputStream input = proc.getInputStream();
Ora, il codice del genere: Codice:
output.write('s');
Codice:
InputStreamReader isr = new InputStreamReader (input); BufferedReader br= new BufferedReader (isr); String line; while ((line=br.readLine()) !=null) System.out.println (line); Microsoft Windows XP [Versione 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. ma il carattere "s" da me inserito non compare. Qualcuno può delucidarmi in merito? Grazie mille.
__________________
Fa' che non turbi l'anima tua il triste spettacolo dell'ingiustizia umana; anch' essa, nell'economia divina, ha il suo valore. È sopra di essa che vedrai sorgere immancabilmente la giustizia di Dio. HO CONCLUSO EGREGIAMENTE TRATTATIVE CON OLTRE 90 UTENTI! ATTENZIONE: consiglio di evitare assolutamente trattative con l'utente Herant |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 5206
|
Quote:
output.write ('\n'); output.flush (); E comunque nota che con 'output' stai scrivendo dei byte, non propriamente dei caratteri. Fai il wrap del OutputStream in un PrintWriter specificando l'auto-flush e poi usa println().
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%) Java Versions Cheat Sheet |
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Jan 2006
Città: Lassù
Messaggi: 2842
|
Quote:
Come potrei fare? Spero di non aver fatto confusione. Grazie e ciao.
__________________
Fa' che non turbi l'anima tua il triste spettacolo dell'ingiustizia umana; anch' essa, nell'economia divina, ha il suo valore. È sopra di essa che vedrai sorgere immancabilmente la giustizia di Dio. HO CONCLUSO EGREGIAMENTE TRATTATIVE CON OLTRE 90 UTENTI! ATTENZIONE: consiglio di evitare assolutamente trattative con l'utente Herant |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jan 2006
Città: Lassù
Messaggi: 2842
|
up
__________________
Fa' che non turbi l'anima tua il triste spettacolo dell'ingiustizia umana; anch' essa, nell'economia divina, ha il suo valore. È sopra di essa che vedrai sorgere immancabilmente la giustizia di Dio. HO CONCLUSO EGREGIAMENTE TRATTATIVE CON OLTRE 90 UTENTI! ATTENZIONE: consiglio di evitare assolutamente trattative con l'utente Herant |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 5206
|
Quote:
Se non è questo quello che vorresti, allora forse non è la soluzione migliore avviare solo e semplicemente la shell e pilotarla come se si dovesse digitare il comando dal prompt! Forse faresti meglio ad avviare la shell passando già il comando da eseguire: blabla ... .exec("cmd /C dir"); In questo modo ciò che leggi dallo standard-output del processo è proprio solo l'output del comando dir.
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%) Java Versions Cheat Sheet |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jan 2006
Città: Lassù
Messaggi: 2842
|
Quote:
Nell'esempio di "cmd" (shell windows) il problema sta nell'inviare tutto alla shell e visualizzare l'output relativo anche se non ho premuto il "carriage return". Come fare? Spero che ciò che desidero sia ora più chiaro. Grazie per le risposte
__________________
Fa' che non turbi l'anima tua il triste spettacolo dell'ingiustizia umana; anch' essa, nell'economia divina, ha il suo valore. È sopra di essa che vedrai sorgere immancabilmente la giustizia di Dio. HO CONCLUSO EGREGIAMENTE TRATTATIVE CON OLTRE 90 UTENTI! ATTENZIONE: consiglio di evitare assolutamente trattative con l'utente Herant |
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 5206
|
Quote:
Stampa sullo standard-output il suo prompt (a parte la intestazione iniziale) es C:\> poi aspetta un comando. In quel frangente, quello che riceve sullo standard-input lo scrive sullo standard-output finché non riceve un newline che indica fine del comando.
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%) Java Versions Cheat Sheet |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jan 2006
Città: Lassù
Messaggi: 2842
|
Quote:
__________________
Fa' che non turbi l'anima tua il triste spettacolo dell'ingiustizia umana; anch' essa, nell'economia divina, ha il suo valore. È sopra di essa che vedrai sorgere immancabilmente la giustizia di Dio. HO CONCLUSO EGREGIAMENTE TRATTATIVE CON OLTRE 90 UTENTI! ATTENZIONE: consiglio di evitare assolutamente trattative con l'utente Herant |
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 5206
|
Perché utilizza funzioni per lavorare a basso livello sulla console (poter scrivere a colori ... in qualunque posizione, ecc...). A quel punto non centra più nulla con standard input/output.
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%) Java Versions Cheat Sheet |
|
|
|
|
|
#10 |
|
Bannato
Iscritto dal: Jan 2003
Città:
Messaggi: 4423
|
...lavori sotto windows o linux?...un ssh potrebbe fare al caso tuo?...
...ciao... |
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Jan 2006
Città: Lassù
Messaggi: 2842
|
Quote:
__________________
Fa' che non turbi l'anima tua il triste spettacolo dell'ingiustizia umana; anch' essa, nell'economia divina, ha il suo valore. È sopra di essa che vedrai sorgere immancabilmente la giustizia di Dio. HO CONCLUSO EGREGIAMENTE TRATTATIVE CON OLTRE 90 UTENTI! ATTENZIONE: consiglio di evitare assolutamente trattative con l'utente Herant |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:00.




















