Run command di Elixir
Cara menjalankan command cli di elixir bisa langsung dicoba diiex
atau buat file elixir script(.exs
)
iex(1)> System.cmd("ls", ["/home/agus"])
{"Desktop\nDocuments\nDownloads\nMusic\nPictures\nPublic\nTemplates\nVideos\n",
0}
Perintah cmd
ini akan mengembalikan koleksi tuple hasil
dan kode exit
. Jika command yang dijalankan tidak ada didalam var PATH maka elixir akan menampilkan error seperti ini:
** (ErlangError) Erlang error: :enoent
(elixir) lib/system.ex:791: System.cmd("ls1", ["/home/agus"], [])
Untuk mengolah hasil dari cmd
bisa menggunakan patter matching elixir, kemudian split file menggunakan fungsi String.split
iex(1)> {res, exit_code} = System.cmd("ls", ["/home/agus"])
iex(2)> res |> String.split
["Desktop", "Documents", "Downloads", "Music", "Pictures", "Public",
"Templates", "Videos"]
Nah setelah displit maka hasilnya sudah berupa list
dan dapat diproses oleh fungsi lain dengan mudah.
sekian.