Como executar o .profile a partir do arquivo .bashrc?

0

Eu tenho um nome de arquivo .test com uma instrução echo. Agora eu quero rodar esse arquivo do arquivo .bashrc. O que eu fiz até agora é:

Meu arquivo .test contém:

echo "hello everyone"

Meu arquivo .bashrc contém:

echo "hello world"

Agora, o que eu quero é executar o arquivo .test do arquivo .bashrc e aqui está o que eu fiz

No arquivo .bashrc

echo "hello world"
ENV=$(/home/narwen/.test)
echo $ENV

Agora, quando tento executar o arquivo .bashrc a partir de um prompt como este

. .bashrc

Eu obtenho

olá mundo

e erros como este

XAUTHORITY=/home/niraj/.Xauthority
_=/usr/bin/env
=

Alguém pode me ajudar por favor?

    
por Narwen 12.11.2013 / 13:17

2 respostas

1

Use apenas:

. /path/to/.test

ou:

source /path/to/.test

Ou, se você quiser manter a saída de . /path/to/.test em uma variável ENV , use:

ENV=$(. /path/to/.test)

Então, não use espaços em torno do = nas atribuições.

Mais tarde, você pode usar a variável $ENV como:

echo $ENV
    
por Radu Rădeanu 12.11.2013 / 13:25
0

Seu arquivo .test está sendo executado como um script. Em vez disso, você pode precisar usar um shell para aplicar a variável ENV ao shell:

$ . .bash
$ echo $ENV
something
$

Meu arquivo .test tem echo "something" como conteúdo e .bash tem ENV=$(. /home/braiam/.test) :

$ cat .bash
ENV=$(. /home/braiam/.test)
$ cat .test
echo "something"
    
por Braiam 12.11.2013 / 13:35