Avatar ·

Comment exécuter une commande externe (lancer un processus) depuis le code Kotlin ?

Bonjour à tous ! Je viens de commencer à apprendre Kotlin et j'écris une petite application console. Je dois exécuter une commande externe, par exemple lancer ping ou copier un fichier avec cp. En Java, j'utilisais Runtime.getRuntime().exec(), mais en Kotlin je vois qu'il existe des fonctions intégrées comme ProcessBuilder, mais je ne comprends pas encore bien comment les utiliser. J'ai essayé d'écrire ce code : ```kotlin fun main() { val command = "ping -c 4 google.com" val process = Runtime.getRuntime().exec(command) val reader = BufferedReader(InputStreamReader(process.inputStream)) var line: String? while (reader.readLine().also { line = it } != null) { println(line) } } ``` Mais il n'affiche que la première ligne et se bloque. Est-ce que je fais quelque chose de mal ? De plus, j'ai entendu dire qu'en Kotlin il existe une manière plus idiomatique que d'utiliser les classes Java. Dites-moi comment appeler correctement des commandes externes ? J'ai besoin non seulement de lancer, mais aussi de lire la sortie, et de gérer les éventuelles