Xcode预操作运行python脚本环境变量,但未正确设置${PROJECT\u DIR}
我正试图在构建前操作中从Xcode运行python脚本:Xcode预操作运行python脚本环境变量,但未正确设置${PROJECT\u DIR},python,xcode,Python,Xcode,我正试图在构建前操作中从Xcode运行python脚本: #! /usr/bin/env python import shutil import os app_name = 'name' def skinfunction(root_src_dir, root_dst_dir): for src_dir, dirs, files in os.walk(root_src_dir): print(str(files)) dst_dir = src_dir.r
#! /usr/bin/env python
import shutil
import os
app_name = 'name'
def skinfunction(root_src_dir, root_dst_dir):
for src_dir, dirs, files in os.walk(root_src_dir):
print(str(files))
dst_dir = src_dir.replace(root_src_dir, root_dst_dir)
if not os.path.exists(dst_dir):
os.mkdir(dst_dir)
for file_ in files:
src_file = os.path.join(src_dir, file_)
dst_file = os.path.join(dst_dir, file_)
if os.path.exists(dst_file):
os.remove(dst_file)
shutil.copy(src_file, dst_dir)
root_src_dir = '${PROJECT_DIR}/skins/'+str(app_name)+'/authorize_bg.imageset'
root_dst_dir = '${PROJECT_DIR}/iDetail/Images.xcassets/authorize_bg.imageset'
skinfunction(root_src_dir,root_dst_dir);
接近脚本末尾时,我试图获取PROJECT_DIR Xcode环境变量,但它无法正常工作。该值无效或“我的格式设置”已关闭
如果我硬编码PROJECT_DIR值(指向项目所在位置的完整url),脚本将成功运行
在尝试获取环境变量时,我是否遗漏了什么 好的,我找到了答案,您需要调用os.getenv()函数,而不是使用${PROJECT\u DIR}直接获取环境变量。我可以通过调用以下命令获取环境变量:
proj_dir = os.getenv('PROJECT_DIR')
不太清楚python,但如果有人在使用/bin/sh,您可以直接使用
$PROJECT\u DIR
,非常方便!