
Eu tenho arquivo pythonmy_script.py
Quando corro:
chmod +x my_script.py
Acabo com dois arquivos chamados my_script.py
, um arquivo executável e um arquivo python, quando tento obter o tamanho do arquivo:
du -sh my_script.py
Estou obtendo o tamanho do arquivo python (4,0K), mas quero saber o tamanho do executável.
Existe uma maneira de alterar o nome do arquivo executável? Para algo dizer my_script
sem .py
?
Responder1
Existe apenas 1 arquivo, my_script.py
. Fazer um simples chmod +x
NÃO "acaba com dois arquivos chamados my_script.py
" (como seria chamado o segundo my_script.py
?).
Como Python é uma linguagem interpretada, você pode considerar o tamanho do python
interpretador e as bibliotecas dinâmicas e interpretadas que ele usa.
Quando a execve
chamada do sistema (consulte man 2 execve
) percebe que my_script.py
é executável (tem o x
bit definido) e começa com " #!<interpreter>
" ela é executada <interpreter> my_script.py
( interpreter
> provavelmente é /usr/bin/python
o seu caso).
Então, você pode simplesmente mv my_script.py my_script
. Ao contrário de outro sistema operacional, os nomes de arquivos Unix/Linux NÃO controlam como os arquivos são executados.
Responder2
Execute este comando para alterar o nome do arquivo enquanto o torna executável.
chmod +x my_script.py && mv my_script.py mv_myscript