一個非常簡單的問題:spark-submit:command not found
我嘗試使用bash腳本來提交spark任務。但不知何故,它總是抱怨它找不到命令。 但是,當我只複製命令並直接在我的終端中運行時,它運行良好。
我的殼魚貝,這裏就是我有我的魚貝的配置:~/.config/fish/config.fish
:
alias spark-submit='/Users/MY_NAME/Downloads/spark-2.0.2-bin-hadoop2.7/bin/spark-submit'
這裏是我的bash腳本:
#!/usr/bin/env bash
SUBMIT_COMMAND="HADOOP_USER_NAME=hdfs spark-submit \
--master $MASTER \
--deploy-mode client \
--driver-memory $DRIVER_MEMORY \
--executor-memory $EXECUTOR_MEMORY \
--num-executors $NUM_EXECUTORS \
--executor-cores $EXECUTOR_CORES \
--conf spark.shuffle.compress=true \
--conf spark.network.timeout=2000s \
$DEBUG_PARAM \
--class com.fisher.coder.OfflineIndexer \
--verbose \
$JAR_PATH \
--local $LOCAL \
$SOLR_HOME \
--solrconfig 'resource:solrhome/' \
$ZK_QUORUM_PARAM \
--source $SOURCE \
--limit $LIMIT \
--sample $SAMPLE \
--dest $DEST \
--copysolrconfig \
--shards $SHARDS \
$S3_ZK_ZNODE_PARENT \
$S3_HBASE_ROOTDIR \
"
eval "$SUBMIT_COMMAND"
我已經試過: 當我將這個命令直接複製並直接運行時,我可以在我的Mac OS X fish shell上完美地運行此命令。 但是,我想實現的是能夠運行./submit.sh -local
,它執行上面的shell。
請提供任何線索嗎?
數據不足。請向我們展示您輸入的內容以及輸出包括所有錯誤(只需從終端複製/粘貼)。另外,如果你輸入'ls -l。/ submit.sh',你會看到什麼?換句話說,你的CWD中的腳本是什麼? –
另外,如果你通過bash腳本運行'spark-submit',你爲什麼需要魚別名?它的用途是什麼?這與你的問題有什麼關係? –
輸出結果爲:'./submit.sh:line 186:spark-submit:command not found'。這是我看到'ls -l submit.sh -rwxr-xr-x 1 myname staff 5700 Aug 17 16:14 submit.sh' – FisherCoder