我正在使用DJango设计一个简单的网站,我的数据库是HBase。在某些部分我需要在HDFS上保存一些文件,例如视频文件,并拥有它的URI。但我的问题是我找不到任何通过DJango访问HDFS的API所以我决定使用ubuntu terminal命令在HDFS上传和下载数据。现在我想知道有没有办法使用Django或任何其他方式通过Django访问HDFS API来运行终端命令?
答案 0 :(得分:0)
让django调用下面的子进程。命令中的每个字符串都应该是列表中的字符串。
import subprocess
subprocess.call(["ls", "-l"])
答案 1 :(得分:0)
您不需要搜索Django实现的库,Django是用python编写的,而python是为它提供库。
另一种解决方案
import subprocess
subprocess.Popen(['python', 'manage.py', 'runserver'])
你也可以使用subprocess.Popen来执行shell命令。 这里描述了子进程Popen和调用之间的区别以及如何使用它们What's the difference between subprocess Popen and call (how can I use them)?