Diritti su file read write execute

0

Ho effettuato l'accesso come "myuser", che è anche l'amministratore del computer. Ho un file su cui ho i seguenti diritti:

-r--r--r--   1 myuser  staff  167 17 Feb 14:26 my_python.py

Tuttavia, quando digito python my_python.py sulla riga di comando, posso comunque eseguire il file. Non ho bisogno dei diritti di esecuzione (x) per farlo?!

L'unico modo in cui non riesco a eseguire il file è quando cambio i diritti su:

----------   1 myuser  staff  167 17 Feb 14:26 my_python.py
    
posta Stophface 17.02.2016 - 14:36
fonte

2 risposte

1

Python richiede solo la lettura del contenuto del file.

Ricordiamo che Python è un linguaggio interpretato e elabora solo i contenuti di quel file, piuttosto che eseguirlo; python è l'eseguibile qui! Pertanto, chiamare l'interprete con il file come input / argomento non richiede autorizzazioni diverse da leggere (ad esempio python example.py ).

    
risposta data 17.02.2016 - 14:42
fonte
1

Non deve essere eseguibile, perché stai eseguendo l'eseguibile python e passa questo file ad esso.

Tuttavia se vuoi eseguire questo file con ./my_python.py questo file dovrebbe essere eseguibile e ha #!/usr/bin/python nella prima riga (o anche meglio #!/usr/bin/env python ).

    
risposta data 17.02.2016 - 14:42
fonte

Leggi altre domande sui tag