olsmir
написал 5 июня 2009 года в 17:24 (1218 просмотров)
Ведет себя
неопределенно; открыл 1 тему в форуме, оставил 2 комментария на сайте.
При написании скрипта TCL никак не могу найти способ, как мне получить путь к самому этому файлу TCL. Например, я написал скрипт test.tcl, поместил его на C:\AAA\BBB\test.tcl. Как мне в этом же скрипте извлечь путь C:\AAA\BBB ?
Последние комментарии
-
fhunter, 21 января в 9:23 → Математика в школе 17
-
fhunter, 21 января в 9:22 → Как настроить чтоб работало две сетевые платы — две сети 3
-
fhunter, 21 января в 9:22 → посоветуйте!!Как ой велосипед приобрести девушке? 10
-
rgo, 11 января в 10:28 → Как «замокать» файл для юниттеста в Python? 1
-
ilyas490, 8 декабря в 13:27 → Книги по Bash? 13

Экология и вегетарианство на благо всем живым существам Планеты.
regsub -all {\[^\]+$} «C:\\AAA\\BBB\\test.tcl» «» out
puts $out
Всё это хорошо (а фразу «\test.tcl», которая также возвращается в переменную $out, я бы естественно отсёк), но в этом примере В ЯВНОМ ВИДЕ указывается этот путь. А я его как бы заранее-то не знаю и хочу получить. Т.е. я поместил скрипт test.tcl в некое место и в процеесе его выполнения хочу получить это место.
Даааа чета я стпуил по твоему вопросу, тада просто в тело скрипта помести:
Увы. $argc и $argv<число> (конечно $argv0) — это первое, что пришло мне на ум, по аналогии с другими языками командной строки. Написал простейшую команду puts «path = $argv0», и получил отлуп:
# can’t read «argv0»: no such variable
Это я получил внутри того приложения, которое умеет работать со скриптами TCL (для чего мне собственно всё и надо).
Если же выполнить из-под обычного интерпретатора TCL (запускаешь экзешник tclsh, открывается чёрное окно с приглашением в виде %, и там вводишь source test.tcl), то выдаётся пустышка:
path =