реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> работа с параметрами в tcl
wolfman
сообщение Mar 16 2018, 08:38
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Приветствую всех.

Понадобилось тут перед сборкой проекта в Квартусе иметь возможность подменять один файлик. Написал скрипт на TCL, но он ожидает ввода параметра с клавиатуры.
А мне надо, чтобы параметр передавался с запуском скрипта, т.е. типа такого: ./myscript.tcl 1
где 1 этот параметр, который определяет какой файл надо заменить.

Никак не соображу как это сделать.

Код скрипта прилагаю:

CODE
#!/usr/bin/tclsh
# получаем параметр с клавиатуры
set var [gets stdin]

# определяем путь, по которуму лежит скрипт и запоминаем его
set TclPath [file dirname [file normalize [info script]]]

# проверяем какой параметр нам передали
if {$var == 1} {
# если передали '1', копируем файл из src/debug/
file copy -force $TclPath/src/debug/pwr.vhd $TclPath

# иначе забираем файл из /src/release/
} else {file copy -force $TclPath/src/release/pwr.vhd $TclPath}


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Mar 16 2018, 08:45
Сообщение #2


fpga designer
****

Группа: Свой
Сообщений: 591
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



Гуглежом находится вот такое
https://www.devdungeon.com/content/how-use-...e-arguments-tcl


--------------------
Go to the top of the page
 
+Quote Post
wolfman
сообщение Mar 16 2018, 10:21
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Заработало вот в таком виде:

Код
#!/usr/bin/tclsh
# определяем путь, по которуму лежит скрипт и запоминаем его
set TclPath [file dirname [file normalize [info script]]]
    
if {[ lindex $argv 0]  == 1} {
    # если передали '1', копируем файл из src/debug/    
    file copy -force $TclPath/src/debug/pwr.vhd $TclPath

# иначе забираем файл из /src/release/
} else {file copy -force $TclPath/src/release/pwr.vhd $TclPath}


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th April 2018 - 16:10
Рейтинг@Mail.ru


Страница сгенерированна за 0.0101 секунд с 7
ELECTRONIX ©2004-2016