2016-09-15 2 views
0

Ich habe eine Datei namens client.py. Ich habe einen symbolischen Link incro genannt mitMake ausführbare symbolische Verbindung in Python?

ln -s client.py incro 

Wie kann ich dieses Skript ausführbar zu machen und es zu meinem ist bewegen (ich bin auf Linux Ubuntu, mit einem Bash-Terminal), unter dem Namen incro? So dass ich in der Lage sein werde

incro 

Ich habe die richtige Sha-Bang. Was muss ich noch tun?

Antwort

2

Setzen Sie den Link in Ihrem bin Verzeichnis, nicht das aktuelle Verzeichnis:

ln -s $PWD/client.py ~/bin/incro 

Sie auch ~/bin in Ihrem $PATH haben sollten, damit Sie Programme ausführen können, die dort sind.

Und wenn das Skript, das nicht bereits ausführbare Datei, fügen ist:

chmod +x client.py 
+0

'ln: Fehler beim Erstellen der symbolischen Verknüpfung '/ home/ubuntu/bin/incro': Keine solche Datei oder dieses Verzeichnis ' – baranskistad

+0

Sie müssen zuerst das Verzeichnis' bin' erstellen. – Barmar

+0

Ok, vergiss das nicht. Ich habe "ln -s client.py incro" ausgeführt und dann "incro" in "/ usr/local/bin" verschoben. Ich lief dann 'incro' und es hieß, der Befehl existiere nicht. Was mache ich falsch? – baranskistad

1

In Linux eine Datei ausführbar machen Sie die Datei mit dem folgenden Befehl einzustellen:

chmod +x [filename] 

Dadurch wird die Datei ausführbar zu root, Benutzer- und Gruppenbesitzer machen.

Um die Datei von jedem Verzeichnis aus ausführbar zu machen, müssen Sie sicherstellen, dass das Verzeichnis in Ihrem PATH aufgeführt ist.

echo $PATH 

zeigt Ihnen, welchen Pfad Sie Ihre Datei oder symbolische Verbindung zu verschieben. Es gibt auch Möglichkeiten, einen Pfad zum PATH hinzuzufügen, aber Sie werden wahrscheinlich feststellen, dass Ihre ausführbaren Dateien zu/usr/local/bin hinzugefügt werden. Bestätigen Sie einfach mit dem obigen Befehl, dass es sich in Ihrem Pfad befindet.

+0

Dies löst nicht die ganze Frage. – baranskistad

+0

Ich habe die Antwort bearbeitet. Bitte lassen Sie mich wissen, ob es noch etwas gibt, das ich vermisse, nach dem Sie gesucht haben. –

1

standardmäßig symbolische Links Dateiberechtigungen folgen, so dass Sie, nicht symbolische Verbindung ausführbar machen, sondern einfach Ihre client.py Datei ausführbar machen .

Befehl:

ln -s client.py incro 

Erzeugt relativ symbolischen Link, so dass Sie nicht einfach kopieren oder in anderem Verzeichnis verschieben. Um den Link beweglich zu machen, erstellen Sie einen Link zur Datei mit dem absoluten Pfad. Zum Beispiel:

ln -s /home/guest/client.py incro 

Oder einfach Link direkt in Ihrem bin Verzeichnis erstellen.

Verwandte Themen