1. 程式人生 > >dos下將命令的執行結果賦給變數

dos下將命令的執行結果賦給變數

在使用spark時,需要在spark-env.cmd中,為環境變數SPARK_DIST_CLASSPATH賦值,賦的值是執行命令“hadoop classpath”的返回結果。

如果是在linux環境下,比較簡單,直接

export SPARK_DIST_CLASSPATH=`hadoop classpath `

就可以了。

在dos環境下,需要變通一下,用for語句把執行結果賦給環境變數:

FOR /F %%i IN ('hadoop classpath') DO @set SPARK_DIST_CLASSPATH=%%i

實驗環境是win10。注意,for語句用在批處理命令中時,需要連用兩個%。

也可以用反引號來把需要執行的命令引起來,這時候,需要加引數usebackq:

FOR /F "usebackq" %%i IN (`hadoop classpath`) DO @set SPARK_DIST_CLASSPATH=%%i