내 배치 스크립트는 다음 디렉토리에 있습니다 상대 경로 :배치 - 해결
\\test\public\windows\scripts\32\test.bat
나는이 폴더의 경로를 얻으려고 : 공공 \ WINDOWS \ \ 테스트 \ 로그 나는 시도했다 위해 %~dp0
를 사용하여 스크립트의 경로를 얻기 위해, 나는 시도했다 :
SET REL_PATH=..\..\
것은 그것이 나에게이 폴더에 표시되지 않는 점이다.
내 배치 스크립트는 다음 디렉토리에 있습니다 상대 경로 :배치 - 해결
\\test\public\windows\scripts\32\test.bat
나는이 폴더의 경로를 얻으려고 : 공공 \ WINDOWS \ \ 테스트 \ 로그 나는 시도했다 위해 %~dp0
를 사용하여 스크립트의 경로를 얻기 위해, 나는 시도했다 :
SET REL_PATH=..\..\
것은 그것이 나에게이 폴더에 표시되지 않는 점이다.
SET REL_PATH=..\..\
경로가에서 촬영 위치를 확인하려면에 따라 경로를 가리키는하는
echo %CD%
가 당신에게 시스템을보고 경로를 알려줍니다 확인하십시오.
그런 다음 상대 경로를 %CD%
에서 스크립트의 경로로 설정하십시오.
이 작업을 수행 한 후에 걸리면 댓글을 남기십시오. 예를를 들어
:
echo %CD%
는
C:\windows\system32
를 제공하고 당신은 당신이로 이동하려면
SET REL_PATH=%CD%\..\..\test\public\windows\scripts\32\
을 수행해야합니다 c:\test\public\windows\scripts\32\test.bat
에 배치 파일을 실행하려면UNC 경로를 해결하기
cd /d %REL_PATH%
이 PUSHD 및 POPD을 수행합니다 :이 경로는 할
@echo off
pushd \\test\public\windows\scripts\32\
::do your work
test.bat
popd
참조 : How to run batch file from network share without "UNC path are not supported" message?
사용 PUSHD
명령을 네트워크 드라이브로 작업. 이렇게하면 UNC 경로에 사용되지 않는 드라이브 문자가 할당되어 정상적으로 탐색 할 수 있습니다. 그런 다음 POPD
을 사용하여 해제 할 수 있습니다. 예를 들어
:
@ECHO OFF
PUSHD "\\test\public\windows\scripts\32"
REM This will be \\test\public\windows
DIR ".\..\..\"
POPD
경로는 'C : \ windows', 변수'REL_PATH' 내가'UNC' 경로를 사용하고 있기 때문에이 일이 나에게 아무것도 – user3502786
을되어 제공되지 않는 이유는 무엇입니까? – user3502786
내가 알고있는 것부터 배치 파일이 공유 네트워크 드라이브에 있고 컴퓨터에서 실행하고 싶습니다 ... 맞습니까? –