.bachrc $ PATH não encontra meus scripts python

1

Eu tentei adicionar um caminho ao meu arquivo .bashrc da seguinte forma

export PATH=/beda/users/home/user252083/bin:$PATH

e sim, eu posso então executar o binário "bader", que está na pasta bin de qualquer lugar. Eu também quero executar scripts python adicionados à pasta bin, por exemplo Eu quero executar python charge.py de qualquer diretório, mas recebo a mensagem de erro

python: can't open file 'charge.py': [Errno 2] No such file or directory

Alguma ideia de como resolver isso?

    
por user252083 25.02.2014 / 10:07

1 resposta

4

Para iniciar o script a partir de $PATH - Você não deve iniciar scripts python como

python scripy.py

Desta forma, você só executará scripts no diretório atual. Em vez disso, inicie o script com um hashbang:

#!/usr/bin/env python

torne-o executável

chmod +x script.py

coloque em algum lugar no seu $PATH e, em seguida, você poderá executá-lo no seu shell.

script.py

Se você também quiser chamá-lo de outros programas, como o krusader ou o que quiser - Você precisaria adicioná-lo a um shell de login $PATH - por exemplo, para adicionar seu caminho a ~/.bash_login ou ~/.profile .

Aliás, no windows python scripts são iniciados como

python script.py

porque o shell do Windows ( command ) não suporta hashbangs.

O motivo para usar

#!/usr/bin/env python

em vez de

#!/usr/bin/python

é que, com a primeira abordagem, você pode controlar qual python deve ser executado - se o seu site tiver vários python instalados. env executará o primeiro python em Seu $PATH . Você pode obter uma lista de todos os executáveis python no seu site com

 which -a python
    
por Adobe 25.02.2014 / 10:16