Altera o nome do arquivo executável ao usar chmod + x

1

Eu tenho o arquivo python my_script.py

Quando eu corro:

chmod +x my_script.py

Acabo com dois arquivos que são chamados de 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 diga my_script sem .py ?

    
por Akavall 15.03.2015 / 03:24

2 respostas

2

Existe apenas um arquivo, my_script.py . Fazer um simples chmod +x NÃO "acaba com dois arquivos chamados my_script.py " (qual seria o segundo my_script.py ?).

Como o Python é uma linguagem interpretada, convém considerar o tamanho do interpretador python e as bibliotecas dinâmicas e bibliotecas interpretadas que ele usa.

Quando a chamada do sistema execve (consulte man 2 execve ) perceber que my_script.py é executável (tem o x bit definido) e começa com " #!<interpreter> ", ela executa <interpreter> my_script.py ( interpreter > é provavelmente /usr/bin/python no seu caso).

Então, você pode simplesmente mv my_script.py my_script . Ao contrário do outro sistema operacional, os nomes de arquivos Unix / Linux NÃO governam como os arquivos são executados.

    
por waltinator 15.03.2015 / 04:52
1

Execute este comando para alterar o nome do arquivo, tornando-o executável.

chmod +x my_script.py && mv my_script.py mv_myscript
    
por Faizan Akram Dar 15.03.2015 / 05:02