请问 python 这两句代码啥意思?

// 上传文件到 hadoop 目录
ExecuteCommand('$HADOOP_FS_CMD -rm -r -skipTrash %s' % hdfs_file);
ExecuteCommand('$HADOOP_FS_CMD -put %s %s' % (local_file, hdfs_file));
// 上传 md5
ExecuteCommand('$HADOOP_FS_CMD -rm -r -skipTrash %s' % hdfs_md5_file);
ExecuteCommand('$HADOOP_FS_CMD -put %s %s' % (local_md5_file, hdfs_md5_file));

这是一段 python 代码,其实是一个功能,这个功能我需要用 node 重写。 可这段代码就不知道咋整了。 谁帮我解释一下呀?比如 $HADOOP_FS_CMD 是啥,是自定义的一个命令么??? 我这边需要重新定义么?? 还是用 shell 模块 直接执行??

阅读 2.3k
3 个回答

在这段代码里,$HADOOP_FS_CMD 是用 ' 引起来的,所以它是字符串,如果要重写,你应该去看一下 ExecuteCommand 做了什么操作

hadoop fs -rm -r -skipTrash filename 递归彻底删除文件或目录

hadoop fs -put filename   hdfs 这个时候,如果hdfs文件目录已经存在,此时则会将file放在hdfs/下的,而如果hdfs文件目录不存在,则把file/*的文件放在目录下,即此时hdfs目录下不存在filename.

不需要你重新定义。$HADOOP_FS_CMD已经存在环境变量中,被定义好了的内容。你在终端中输入一下$HADOOP_FS_CMD就理解了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题