10

Sorry but I could not find the answer from googling...what is the syntax for running a bash command in kotlin? I would like to do a curl command. The documentation out there seems very limited or maybe I am bad at googling?

1

2 Answers 2

19

As curl is not a bash-specific application, you can just start it like any other process. Assuming you are using kotlin on the JVM:

val process = ProcessBuilder("curl", "https://example.com").start()
process.inputStream.reader(Charsets.UTF_8).use {
  println(it.readText())
}
process.waitFor(10, TimeUnit.SECONDS)

Instead of using curl you might want to look into kotlin or java libraries, depending on your problem it could be easier and even faster than starting the curl process.

Sign up to request clarification or add additional context in comments.

2 Comments

Can I still use external libraries like unirest even if it is a kotlin script ?
If you are running the script with kotlinc you can just specify the classpath: kotlinc -script test.kts -classpath library.jar
11

You can do that simply with Runtime.getRuntime().exec("command line").

Since Kotlin is based on Java, you can find documentation in JavaDoc here: https://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html#exec(java.lang.String)

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.