$ PATH와 같은 목록에서 디렉토리 이스케이프


1

Git 라이브러리 인 LibGit2에 대한 래퍼를 개발 중입니다.
그리고 나는 문제가 생긴다.

많은 GIT 기능이 허용됩니다. 경로 목록 , 즉 문자열
토큰으로 분리 된 일련의 경로로 구성되며,
LibGit2가 나에게 제공 할 수 있습니다. 내 리눅스에서는 콜론 ( : ).

문제는 내가 저에게 묻습니다.
경로에이 토큰이 있으면 어떻게됩니까?

그것은 어쩌면 도망 갈 수 있습니까? \: 그 쯤?
Windows에서 바로 사용할 수 있습니까?

나는 디렉토리를 포함하는 것이 일반적이지 않다는 것을 안다. : 그의
이름이지만 래퍼로서이 경우를 대비해야합니다.

답변:


1

나는 체크하지 않았다. libgit2 , 그러나 어느 쪽도 자식 다양한 $PATH 사용자 (예 : Glibc) execvpe() 기능 및 다양한 쉘 ( 대시 , 세게 때리다 ) - 모든 형태의 이스케이프 지원 - 디렉토리 이름에 :, 경로 관련 환경 변수의 일부로 사용될 수 없습니다.

Windows에서 경로 구분 기호는 다음과 같습니다. ; - 당신은 사용할 수 있어야합니다. PATH_SEP 또는 비슷한 상수를 사용하여 값을 찾을 수 있습니다. 다시 이스케이프가 지원되지 않습니다.

사용자가 다음과 같은 경로를 제공하면 /usr/foo:bar, 그러면 그들은 ~을 기대하는 그것은 두 개의 디렉토리로 분할되므로 그렇게하십시오.


알아 둘만 한. 시간 내 주셔서 감사합니다!
Alba Mendez
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.