A menos que o script setiin64.csh
C-shell seja compatível com sh
, source /home/xilinx/ise_14.5/14.5/ISE_DS/settings64.csh
de um shell sh
não funcionará. Mas você diz que sim, então eu vou ter que aceitar sua palavra.
Você não pode escrever um script que origina esse arquivo e executá-lo com sh test.sh
e esperar que as variáveis de ambiente sejam definidas no ambiente shell atual .
O sh test.sh
configura um novo ambiente no qual o comando source
será usado para fornecer setiin64.csh
(ainda acho difícil acreditar que isso realmente funcionará, é um script csh
). Esse novo ambiente será excluído depois que test.sh
for executado. Nenhuma variável definida será transferida para o ambiente externo (sua sessão de shell).
Você poderia
source test.sh
Mas isso é exatamente o que você fez desde o início, e você pode também usar um link simbólico para /home/xilinx/ise_14.5/14.5/ISE_DS/settings64.csh
.
A melhor solução é, provavelmente, apenas fornecer o arquivo a partir da linha de comando (ou de um dos seus arquivos de inicialização do shell).