我正在尝试通过 Java 代码在 Linux 终端中执行以下 spark-shell 命令。
echo spark.sparkContext.parallelize\(1 to 3,3\).map\(x => \
(x,\"city_\"+x\)\).toDF\(\"num",\"city\"\).write.partitionBy\(\"num\"\).mode\
(SaveMode.Overwrite\).parquet\(\"/tmp/abinash\"\) | /opt/ab/cd/de/spark-shell
但即使文件存在,/tmp/abinash 也会出现“没有这样的文件或目录”错误
我尝试了很多方法来解决这个问题。但没有取得任何成功。 我假设转义字符存在问题。
谁能帮我解决我在这里做错的问题。
最佳答案
试试这个。
> echo "spark.sparkContext.parallelize(1 to 3,3).map(x => (x,\"city_\"+x)).toDF(\"num\",\"city\").write.partitionBy(\"num\").mode(SaveMode.Overwrite).parquet(\"/tmp/abinash\")"
spark.sparkContext.parallelize(1 to 3,3).map(x => (x,"city_"+x)).toDF("num","city").write.partitionBy("num").mode(SaveMode.Overwrite).parquet("/tmp/abinash")
关于linux - 由于转义字符导致找不到文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52704306/