Питання про CSH сценарію - SetEnv ROOT_PATH

N

no_mad

Guest
Привіт, ось мій простий скрипт: [код] #! / Бен / CSH-е SetEnv ROOT_PATH `PWD` [/ код] Результат: Вона не змогла на SetEnv. Коли я зробив Ехо $ ROOT_PATH, він сказав ROOT_PATH: Undefined змінної. Будь ласка рада. Спасибо заранее.
 
в моїй оболонці с, вона працює, луна результат "PWD"!
 
Привіт, Ви можете використовувати "набір ROOT_VAR =` `PWD" вираз, якщо вам не потрібно, щоб вічне $ ROOT_VAR змінну дитини оболонки і глибших
 
Привіт, дякую за всі відповіді. Я знайшов винуватця. Це не має нічого спільного з SetEnv. Проблема в тому, що я намагаюся виконати Tcsh файл в CSH. Чи можна це зробити? Я просто новачок у C Shell сценаріїв. [Код] #! / Бен / CSH-е / Праці / бен / setproj # Tcsh файл сценарію кд my_proj SetEnv ROOT_PATH `джерело PWD` $ ROOT_PATH / my_tools / proj.env [/ код] Будь-які ідеї. Спасибі
 
Привіт, так, що ви можете запустити Tcsh сценарію до сценарію CSH. Просто переконайтеся, що "Tcsh" скрипт "виконуваним", або Ви можете використати таку інструкцію, щоб запустити "неісполняемие" сценарій: [цитата] #! / Бен / CSH-е Tcsh / Праці / бен / setproj # Tcsh файл сценарію кд my_proj SetEnv ROOT_PATH `джерело PWD` $ ROOT_PATH / my_tools / proj.env [/ цитата]
 
Привіт kulyapinav, Дякуємо за відповідь ур. Я спробував і тепер його можна виконати. Але проблема полягає в його dont переходите до наступного заяву в CSH файл. Поки я типу "вихід". Після налагодження, я дізнався, що Tcsh перевірку файлів на виїзд команди. Приклад: [код], якщо ($ статус == 0), то do_this1 do_next іншого виходу 1; ENDIF [/ код] Будь ласка, допоможіть мені тут. Спасибі
 
Привіт, я не в змозі відтворити проблему. Будь ласка, надайте обидва сценарії розширений приклад
 
мій основний сценарій: [код] #! Джерело / бен / CSH-е Tcsh / Праці / бен / setproj-р MyProj-CFG U2 # Tcsh файл сценарію кд my_proj_path SetEnv ROOT_PATH `PWD` $ ROOT_PATH / my_tools / proj.env [/ код] тут Tcsh сценарій під назвою setproj : [код] # / USR / BIN / Tcsh-е SetEnv монтує / dir1/proj1 SetEnv SETPROJ "$ монтує / процес / бен / setproj $ ARGV" набір Cmd = `$ монтує / процес / бен / setproj.pl $ ARGV `, якщо ($ статус == 0), то EVAL" $ ЦМД "; SET PATH = ($ КРІПЛЕННЯ / Праці / $ бен шлях) джерелом $ КРІПЛЕННЯ / Праці / бен / temp.csh інший вихід 1; ENDIF [/ код]
 
Привіт, Ваш сценарій виглядає нормально, і він працює з мого боку. Спробуйте пасту тут повідомлення про помилку, яке ви бачите
 
Привіт kulyapinav, Дякуємо за швидку відповідь ур. Вона працює. Існує помилка не була сформована. Проблема після виконаних setproj сценарій, він не виконує наступний оператор в основному сценарії. Поки я набрав виходу. Основний сценарій: [код] #! / Бен / CSH-е Tcsh / Праці / бен / setproj-р MyProj-CFG U2 # Tcsh файл сценарію кд my_proj_path # це буде виконуватися, якщо джерело SetEnv "вихід" я типу ROOT_PATH `PWD` $ ROOT_PATH / my_tools / proj.env [ / код]
 
Привіт, я бачу. Схоже, сценарій Perl чекає деяке Зверніть увагу ВХІД STD, що ви намагаєтеся оцінити результат Perl скрипт. Я вважаю, що процес хотілося б користувачеві ввести щось, не кажучи іншими словами це чекати відповіді від вхідного потоку STDIN. Налагодження цієї частини коду, щоб бути впевненим, що нічого не потрібно призупинити виконання на сценарій. Щоб зробити більш правильну пораду дати мені "Ехо $ ЦМД" результат.
 

Welcome to EDABoard.com

Sponsor

Back
Top