2011-12-09 3 views
2

Tcl을 통해 Windows에서 파일 이름없이 경로를 가져 오는 방법은 무엇입니까? 이 같은 전체 경로가 : 난 단지 경로를 필요 얻기 위해 파일 이름을 제거 할Windows에서 파일 이름없이 경로 가져 오기

c:\My_Designs\ipcore_script\test\src\IP_CORE\mux\sus.do

을이 :

c:\My_Designs\ipcore_script\test\src\IP_CORE\mux

답변

6

그것은 manual에서, dirname입니다 :

파일 dirname이름

마지막 요소를 제외한 이름의 모든 경로 구성 요소로 구성된 이름을 반환합니다. 이름이 상대 파일 이름이고 하나의 경로 요소 만 포함하는 경우 .'' (or : ''을 Macintosh에서 반환합니다. name이 루트 디렉토리를 참조하면 루트 디렉토리가 리턴됩니다. 예를 들어,

파일이 dirname에 c :/

반환 C :/.

틸드 대체는 명령을 완료해야하는 경우에만 수행됩니다. 예를 들어,

파일이 dirname ~/SRC/foo.c를

돌아갑니다 ~/src에,

파일이 dirname 반면 ~

반환 /홈 (또는 비슷한 것).

+1

또한 당신은 간부 호출에 전달하면 파일 이름 예와 Windows가 특정 작업을 수행 할 할 경우에 파일 nativename을 사용할 수 있습니다. – TrojanName

+0

+1 : [더 최근의 문서] (http://www.tcl.tk/man/tcl8.6/TclCmd/file.htm#M13)에 링크하는 것을 선호하지만 이것에 대해서는 동일합니다 명령. –

1
set path1 [info script] 
# get the path and file name of currently opened file 
puts $path1       
# shows the path            
set dir1 [file dirname $path1] 
# getting the directory from the fullpath       
puts $dir1 
관련 문제