2016-04-18 2 views
0

В настоящее время я пытаюсь включить процесс установки Spark/Hadoop на тестовый стол в наш скрипт powershell.Powershell chmod on/tmp/hive для winutils и hadoop/spark

Это среда окна и несколько битов метания curveballs, но Thsi худший :)

Когда я вручную установить я могу запустить %HADOOP_HOME%\bin\winutils.exe chmod 777 /tmp/hive из командной строки, но теперь мне нужно перевести это в Powershell скрипт, Это вообще возможно? Я заработал, но еще не нашел решения. Одно сообщение, предлагаемое с использованием icacls, но затем/tmp/hive не разрешено, как arg.

Спасибо за помощь!

+0

% HADOOP_HOME% будет выглядеть как: (Get-Childitem env: HADOOP_HOME). Значение. не уверен, что Start-Process будет лучшим выбором в вашем случае. –

ответ

3

Использование синтаксиса переменной среды PowerShell ($env:VARIABLE) вместо синтаксиса пакета (%VARIABLE%) должно быть достаточным. Возможно, поместите команду в двойные кавычки и используйте оператор вызова, чтобы позаботиться о потенциальных пробелах в пути.

& "$env:HADOOP_HOME\bin\winutils.exe" chmod 777 /tmp/hive 
+0

Спасибо, что согласились на галстук, очень ценим! :) – null

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