Nachdem ich ein oder zwei Monate lang Linux verwendet habe, weiß ich, was ich jetzt mache.
Beim Erstellen von Programmen in einer beliebigen Sprache habe ich offensichtlich folgenden Code verwendet:
$ python test.py
Wenn ich also test.py
eine bestimmte Datei lesen wollte , musste ich Folgendes verwenden:
$ python test.py something.file
Was ich jetzt tun möchte, ist es, eine Befehlszeilenanwendung zu erstellen, damit ich sie verwenden kann
$ myapp something.file
Ein Programm wie das python
in $ python test.py
oder das nano
in$ nano program.pl
Aber wo um alles in der Welt beginne ich mit der Erstellung solcher Anwendungen? Ein bisschen Web-Trawling hat mich nicht weiter gebracht.
Wenn Sie mir selbst sagen können, wäre das großartig, aber ich werde gerne eine Reihe von Links akzeptieren.
Ich bin völlig offen, wenn es mehr als einen Weg gibt. Es macht mir nichts aus, welche Sprache (eine Ausrede, um eine andere zu lernen!) Oder was auch immer.
quelle
python
Teil angeben zu müssen?python
Antworten:
Sie können Python-Skripte ausführen, indem Sie sie ausführbar machen (
chmod +x test.py
) und#!/usr/bin/env python
die erste Zeile erstellen. Sobald Sie dies tun, wird beim Ausführentest.py args
Python aufgerufen, um Ihr Skript auszuführen. Lesen Sie mehr über Shebangs , wenn Sie mehr erfahren möchten.quelle
$ test.py 30
gab einen Bash-Fehler :-bash: test.py: command not found
. Vielen Dank für Ihre bisherige Hilfe!$PATH
. Verwenden Sie entweder einen Pfad wie/path/to/test.py
oder,./test.py
wenn Sie/path/to
bereits vorhanden sind, oder fügen Sie/path/to
Ihren hinzu$PATH
. Auf dieser Seite gibt es viele doppelte Fragen zu letzterem.$PATH
Datei eingefügt haben, lassen Sie Dateiendungen wie.py
.#!/usr/bin/env python
oben in Ihrem Skript, bevor Sie die Erweiterung .py entfernen können. Jedes Skript, das diesen oder einen ähnlichen Aufruf enthält (z. B.#!/bin/sh
für Shell-Skripte), kann jedoch ohne Erweiterung benannt werden. Es hat nichts damit zu tun, ob es in Ihrem Pfad ist oder nicht..EXE
und.COM
wichtig sind. Der Grund für das Entfernen der Erweiterung ist jedoch, dass generische ausführbare Dateien nur generische ausführbare Dateien sein sollten. Die Bedeutung dieser Tautologie ist, dass die Benutzer nur die Funktionalität wünschen und nicht wissen oder sich darum kümmern müssen, ob es sich um Perl oder Python oder sh oder bash oder awk usw. handelt - das ist ein größtenteils irrelevantes Implementierungsdetail. Wenn Sie ein Skript ausführbar machen und einen Shebang hinzufügen, wird es zu einer generischen ausführbaren Datei.In C sieht es so aus:
Das Argument ist die Anzahl der Argumente. Beachten Sie, dass der Name des Programms / Werkzeugs zählt.
Die Argumente selbst enden im Argumentvektor (oder Array) argv.
Dann gibt es den schwierigen Teil des Schreibens von Code, um mit ihnen auf die beabsichtigte Weise umzugehen.
Dann kompiliere mit gcc. Sie geben den Namen des Programms mit dem
-o
Flag (outfile) an. Führen Sie die Datei aus dem aktuellen Verzeichnis wie folgt aus:./tool_name input_file_1 ... input_file_n
(oder legen Sie sie in einem Verzeichnis ab, das beim Schreiben angezeigt wirdecho $PATH
, und rufen Sie sie dann von überall auf, dh ohne Punkt).quelle
Ich benutze Go. Es ist eine kompilierte Sprache, plattformübergreifend, mit der einfachen Programmierung einer dynamischen Sprache und Unterstützung für Parallelität und Kommunikation.
Ich gehe nicht zurück zu Python, da es sehr lustig ist, mit Go zu entwickeln.
http://golang.org/
https://github.com/languages/Go
Hier haben Sie ein einfaches Programm, das die in diesem Befehl verwendeten Argumente abruft:
http://play.golang.org/p/1dpUT11-cc
quelle