exportando uma variável de ambiente de um script bash para um shell tcsh

0

Eu executo scripts bash de shells tcsh. Eu quero definir uma variável de ambiente no shell tcsh de um script bash.

O método de fazer isso, se o seu shell pai é bash é a fonte de um arquivo, ou seja, se eu tiver um arquivo chamado dog que contenha

#!/bin/bash
myEnv=foo
export $myEnv

depois de um shell bash, o comando

. dog

como esperado, crie um envi     cão de origem

então nada acontece. Existe uma maneira de realizar o que eu quero fazer?

obrigado!

    
por Leo Simon 13.04.2016 / 15:01

2 respostas

1

Você quer

export myEnv

não

export $myEnv
    
por Gunnar Hjalmarsson 13.04.2016 / 15:08
0

Além do que Gunnar já observou, export disponibilizará a variável apenas para essa instância do shell bash e seus processos filhos. Além disso, a sintaxe tcsh e bash diferem quando se trata de variáveis.

Sugiro que você defina uma variável na sintaxe familiar para tcsh

eagle:~/sergrep> cat var_file.txt
setenv foo "TEST"
eagle:~/sergrep> source var_file.txt
eagle:~/sergrep> echo $foo
TEST
    
por Sergiy Kolodyazhnyy 13.04.2016 / 15:12