Je souhaite envoyer du texte au programme Java suivant à partir de la ligne de commande Unix (bash), afin qu’il imprime le texte entré. Comment puis-je écrire un script shell qui enverra la chaîne “Print this” au programme Java?
import java.util.Scanner; public class ReadStuff{ public static void main(Ssortingng[] args){ Scanner scan = new Scanner(System.in); System.out.println("Enter some text:"); System.out.println(scan.nextLine()); } }
Utiliser l’ echo
echo "Print this" | java ReadStuff
Notez que cela va sortir:
Enter some text: Print
Parce que vous appelez Scanner.next()
qui lit le mot suivant, pas la ligne entière.
Ou alternativement, si vous avez des choses dans un fichier:
cat file_with_Print_this | java ReadStuff