如何从$ AZ_BATCH_NODE_SHARED_DIR获取路径?

时间:2017-10-10 20:57:50

标签: python azure-batch

我正在使用Azure Batch和Python,我想在批处理任务的共享空间中创建一个目录。

根据This Question

  

Shared:此目录提供对节点上运行的所有任务的读/写访问权限。在节点上运行的任何任务都可以在此目录中创建,读取,更新和删除文件。任务可以通过引用AZ_BATCH_NODE_SHARED_DIR环境变量来访问此目录。

想象一下,该文件夹名为test_dir

if not os.path.exists('test_dir'):
    os.makedirs('test_dir')

现在,如果我想将文件写入该目录怎么办?我不能用:

with open('$AZ_BATCH_NODE_SHARED_DIR/test_dir/test.txt', 'a') as output:
    output.write('hello\n')

如何从$AZ_BATCH_NODE_SHARED_DIR获取完整路径?

1 个答案:

答案 0 :(得分:0)

使用os.environ,它将当前环境公开为映射:

shared = os.environ['AZ_BATCH_NODE_SHARED_DIR']
with open(os.path.join(shared, 'test_dir', 'test.txt'), 'a') as output: