Ir para conteúdo


Revista PROGRAMAR – Edição 46 (Setembro 2014): Download já disponível!

- - - - -

Chamar um script python a partir da shell


  • Por favor inicie sessão para responder
7 respostas a este tópico

#1 oliveiracarlos

oliveiracarlos

    null

  • Novo Membro
  • Pip
  • 7 mensagens

Publicado 12 de Junho de 2012 - 04:22

Boa noite,

Tenho um ficheiro "Exercicio.py" que tem como função abrir um ficheiro cujo nome está contido no script, neste caso "Texto.txt".

Gostava de saber se é possivél chamar esta função pela shell de comandos da seguinte forma:
abre trabalho.txt, em vez de python Exercicio.py?

Tenho pesquisado bastante e não consegui nenhuma resposta a esta duvida.

mais uma vez obrigado pela vossa ajuda.

#2 brunoais

brunoais

    Unsigned User

  • Moderador
  • PipPipPipPipPipPip
  • 3355 mensagens

Publicado 12 de Junho de 2012 - 11:19

em que OS?

#3 oliveiracarlos

oliveiracarlos

    null

  • Novo Membro
  • Pip
  • 7 mensagens

Publicado 12 de Junho de 2012 - 19:09

Estou a usar o Ubuntu numa maquina virtual

#4 Th3Alchemist

Th3Alchemist

    Try-Catch User

  • Membro
  • PipPipPipPip
  • 294 mensagens

Publicado 13 de Junho de 2012 - 10:16

nao, mas podes abrir o script com argumentos como por exemplo;

Código (Bash):
~$ python Exercicio.py abre ficheiro.txt

para tal, utilizas o sys.argv

Editado por Th3Alchemist, 13 de Junho de 2012 - 10:18.


#5 brunoais

brunoais

    Unsigned User

  • Moderador
  • PipPipPipPipPipPip
  • 3355 mensagens

Publicado 13 de Junho de 2012 - 15:56

Dá aqui uma vista de olhos:
http://linux.about.com/od/commands/a/Example-Uses-Of-The-Command-Alias.htm

#6 bsccara

bsccara

    Try-Catch User

  • Membro
  • PipPipPipPip
  • 482 mensagens

Publicado 14 de Junho de 2012 - 01:03

Podes fazer Exercicio.py <nome do ficheiro> (sem o 'python' antes), se é isso que queres. Para isso mete esta linha no topo do ficheiro .py:

Código (Bash):
#!/usr/bin/python

e marca-o como executável com 'chmod a+x Exercicio.py'. Já agora a extensão 'py' não é necessária (recomendável mas não necessária).

#7 oliveiracarlos

oliveiracarlos

    null

  • Novo Membro
  • Pip
  • 7 mensagens

Publicado 14 de Junho de 2012 - 07:56

Obrigado pela ajuda
resultou

#8 tiagogala

tiagogala

    null

  • Novo Membro
  • Pip
  • 1 mensagens

Publicado 08 de Julho de 2012 - 19:08

Uma alternativa é adicionares o header Código :
#! /usr/bin/python
marcar o ficheiro como executável Código :
chmod +x exercício.py
, mudar-lhe o nome para "abre" e colocá-lo em em /usr/bin (acho eu). Assim, a partir da linha de comandos  basta escrever $ abre <ficheiro.txt>