유니티 에디터에서 bat 파일 실행하기 / node.js 폴더 위치 문제 없이 실행하기

이건개발·2024년 9월 3일
1

유니티 Assets/Editor 폴더에 아래의 스크립트를 만들고

public class MyEditorMenu
{
	[MenuItem("메뉴/실행")]
	public static void RunMakeLocal()
	{
		var cmd = "/C .\\tools\\run.bat";
		System.Diagnostics.Process.Start("cmd.exe", cmd);
	}
}

이러면 상단 메뉴에
메뉴 -> 실행
버튼이 생깁니다.

누르면 RunMakeLocal() 함수가 실행되구요

run.bat 에서 할일은 저는 node index.js 를 실행해야하는데
현재 폴더 위치가 유니티 폴더라 제대로 실행이 안됩니다.

run.bat 폴더가 있는 곳을 현재 폴더로 바꿔줍니다.

@ECHO off

@REM echo "커맨드의 결과값을 var 에 넣기"
@REM FOR /F "" %%F IN (`%~dp0`) DO (
@REM SET var=%%F
@REM )

@REM run.bat 폴더위치: %~dp0
SET "VAR=%~dp0"
echo "VAR: %VAR%"

echo "현재폴더를 bat 폴더위치로 변경"
SET "CMD=cd %VAR%"
%CMD%

echo "현재 폴더 확인"
cd

echo "실행"
node index.js

pause

이러면 유니티 에디터에서 노드 스크립트를 실행할 수 있는 버튼을 만들 수 있습니다. 여러가지 기능을 자동화 할 수 있을 것입니다.

profile
게임 개발 / 웹 개발 / 주식 투자 / 은퇴자 / 클라우드타입 / 파이어베이스 / 수퍼베이스 / 유니티

0개의 댓글