Como executar um script Python não como '~ $ python myscript.py', mas como um único comando '~ $ myscript'? [duplicado]

1

Eu tenho um script Python que aceita argumentos de linha de comando.

Quando quero executar o script, tenho que navegar para o diretório dele e executar:

python myscript.py [arguments]

Como posso executá-lo como:

myscript [arguments]

Eu tenho que criar um pacote? Se sim, como?

    
por Conor McCauley 23.05.2016 / 00:37

3 respostas

1

Edite seu script para que sua primeira linha seja um shebang apontando para o caminho do executável do intérprete desejado.

Primeiro, encontre onde o executável python está, com which python .

Em seguida, na primeira linha do seu script, adicione

#!/path/to/python

Em seguida, execute

mkdir $HOME/bin

E coloque seu script lá.

Isso deve ser feito!

    
por Eduardo Cola 23.05.2016 / 00:47
2

Adicionar

#!/usr/bin/python

para a primeira linha do seu script. Isso pressupõe que você tenha python instalado e executável a partir de / usr / bin e que o diretório atual (.) Esteja na variável de ambiente PATH (não o padrão, mas você pode alterá-lo no arquivo .profile inicial).

    
por ubfan1 23.05.2016 / 00:43
2

Primeiro, verifique se myscript.py é executável fazendo chmod +x myscript.py . Segundo, certifique-se de que o shebang #!/usr/bin/env python apareça como a primeira linha de myscript.py . Você então executa o script usando ./myscript.py [arguments] .

    
por edwinksl 23.05.2016 / 00:51