【Maya:Python】UVセットをコピー
shamimatsu
三味松ブログ
python3.7を使用
pythonの勉強で作成しましたが、階層構造の作成は思いのほか便利で仕事で多用しています。
新規作成したフォルダをbatにドラッグ&ドロップするとフォルダ内にscenes、sourceimages、sourceimages/psd’が作成されます。書き換えれば他のフォルダ名で作成できるのでプロジェクトの仕様に合わせて変更してください。
フォルダ以外をドロップした場合はエラーメッセージ、指定フォルダがすでに存在していた場合は存在を知らせるメッセージが出るようにしています。
テキストドキュメントを新規作成し、CreateDir.pyというファイル名にして以下の内容を書いて保存してください。
import os
import sys
file_path = sys.argv[1]
def create_dir(file_path):
if os.path.isdir(file_path):
scene_path = os.path.join(file_path, 'scenes')
image_path = os.path.join(file_path, 'sourceimages')
psd_path = os.path.join(file_path, 'sourceimages/psd')
list_dirs = [scene_path, image_path, psd_path]
for list_dir in list_dirs:
if os.path.exists(list_dir):
print('ディレクトリは存在しています', list_dir)
else:
os.makedirs(list_dir, exist_ok=True)
print('ディレクトリ作成', list_dir)
else:
print('フォルダをドロップしてください')
create_dir(file_path)
テキストドキュメントを新規作成し、CreateDir.batという名前にして以下の内容を書いて保存してください。
※pyファイルと並列にbatを置いた場合
@echo off
call pythonがあるディレクトリ\python.exe CreateDir.py %1
pause
「C:\Program Files」のようにパスにスペースがあると実行が失敗します。
“C:\Program Files”のように「”」で囲む必要があります。
こちらのサイトがとても参考になりました。
バッチファイルでの「スペース」を含んだ文字列の取り扱い
https://jj-blues.com/cms/column-spaceinbatfile/