问题
What the following function will return? ok atom or Cmd?
function_test() ->
Cmd = os:cmd("ls"),
io:format("The result of ls is:~p~n", [Cmd]).
If it returns ok then how it should be rephrased to return Cmd while still using io:format?
回答1:
In Erlang the last expression in your function is returned, in your case that would be the result of io:format which is ok.
To return Cmd you can simply make it the last expression in your function:
function_test() ->
Cmd = os:cmd("ls"),
io:format("The result of ls is:~p~n", [Cmd]),
Cmd.
来源:https://stackoverflow.com/questions/18787867/return-value-of-a-function-in-erlang