2015-12-25 5 views
0

Скажем, у меня есть файл, который я хочу превратить в исполняемый файл в Elixir, сохраняя его исходные разрешения. Как я могу это сделать? Использую ли я File.chmod (и если да, то как?) Или System.cmd?Как сделать файл исполняемым в Elixir?

+0

Что вы имеете в виду под этим? Не запускаем ли мы программы elixir с помощью команды 'elixir '? –

+0

Нет, я имею в виду, что у меня есть случайный файл, который я хочу включить в исполняемый файл ('chmod + x filename') через код Elixir. – jona

+0

У меня есть, но когда я использую 'System.cmd 'chmod", ["+ x", filename], cd: pathname', он ничего не выполняет, как показано в первом элементе, который он возвращает в кортеже. – jona

ответ

3

Возможно, вы не сможете использовать File.chmod, поскольку он ожидает неотрицательное целое число как способ выражения разрешений, например. 755, 666 и т. Д. Поэтому требуется установить все разрешения и не разрешить сохранять существующие разрешения.

File.chmod("file.sh", 755) 

Следовательно, System.cmd кажется, более склонны способом, так как он выполняет команду chmod системы.

{msg, result} = System.cmd "chmod", ["+x", filename], cd: pathname 
#=> {"", 0} 

result значение 0 указывает, что команда была успешно выполнена.

 Смежные вопросы

  • Нет связанных вопросов^_^