It is possible to interact with the underlying operating system, execute OS commands, and get the result in our Elixir applications.
To do this, we will be using Alexei Sholik's porcelain (https://hex.pm/packages/porcelain).
We will build a very simple application that will accept a string defining a path and will return a list containing the entries for that path. We will use the
ls unix command without leaving our Elixir application! We will also define a generic run function that will allow the running of any command we pass as the argument.
To create an application that interacts with the underlying operating system, we will follow these steps:
> mix new os_commands