У меня есть две большие коммерческие программы, которые работают вместе с довольно сложными скриптами .cshrc. Но независимо от того, нахожусь ли я в оболочке bash / tsch / csh при запуске, мой исходный путь при запуске находится в формате bash. Когда я запускаю сценарии .cshrc, которые устанавливают пути (и переменные) для файлов поддержки программ, система игнорирует пути, заданные через сценарий cshrc.
Пример из команды echo $ PATH. Примечание. Я получаю такие же результаты, если запускаю в оболочке bash или csh.
начальный путь / usr: / usr / bin
после cshrc / usr: / usr / bin / home / program1 / home / program2
поскольку я не могу изменить их скрипты, что я могу сделать, чтобы изменить путь на 1 формат? Либо: / usr: / usr / bin: / home / program1: / home / program2, либо / usr usr / bin / home / program1 / home / program2
Спасибо,
В ОБЕИХ вариантах csh или sh PATH - это переменная среды, которая будет выглядеть идентично.
Вы запутались с установкой $ path (обратите внимание на нижний регистр), они локальны для среды csh и будут выглядеть по-другому.
FYI, установка переменной среды для вариантов sh и csh:
sh: PATH = 'a; b; c; d; e'; экспорт ПУТЬ
csh: setenv ПУТЬ 'a; b; c; d; e' -OR- path = '(a b c d e)'