2016-08-11 6 views
1

Sagen Sie, ich gemacht und kompiliert ein kleines Programm in C, um die Bytes einer Datei, filebyte genannt zu zählen. Um es zu laufen würde ich ./filebyteWie mache ich mein Linux C-Programm von Bash zugänglich

Jetzt will ich es universell auf bash machen, wie zum Beispiel einer PHP-Datei auszuführen, würde ich bash Befehl php file.php, genauso verwendet Ich mag würde mein Programm auszuführen, filebyte filename.

Wie mache ich das?

Danke!

+0

wenn Sie einen Befehl in bash ausführen, dann ist der gleiche Befehl wird in einem Bash-Skript arbeiten (dh '/ filebyte'.) Wenn Sie nicht wissen, wo sich das Programm befindet, müssen Sie es einfach in eines der '$ PATH'-Verzeichnisse stellen, damit Sie es als Befehl ausführen können, anstatt –

Antwort

3

schaffe ich oft einen bin/ Verzeichnis in meinem Home-Verzeichnis für kleine benutzerdefinierte Anwendungen.

Sie müssen dieses Verzeichnis dann zu Ihrem PATH hinzufügen. Dies ist eine Liste von durch Doppelpunkte getrennten Pfaden, die Ihre Shell nach ausführbaren Dateien sucht, wenn Sie einen Namen in der Befehlszeile eingeben.

wird, indem diese in Ihrer ~/.bashrc Datei Dieses in der Regel erreicht.

PATH="$PATH:~/bin" 
1

Überprüfen Sie die Umgebungsvariable PATH und legen Sie die ausführbare Datei in eines der aufgeführten Verzeichnisse. Sie können es auch in ein benutzerdefiniertes Verzeichnis einfügen und dann an PATH anhängen. Sie können es durch printenv PATH

+0

. Ich entscheide mich für Reinharts Antwort, weil es genau zu meinem Bedarf passt, aber auch zu Ihrer Antwort. Falls jemand mehr über die Umgebungsvariable PATH wissen möchte (siehe hier) (https://www.java.com/de/download/help/path.xml) – bluepinto

1

Ausführung Wenn Sie es für Ihre aktuelle aktive Schale allein wollen, tun

export PATH=$PATH:</path/to/file> 

Für dauerhaft macht die Datei zu ~/.bashrc

die obige Zeile ab Lager in Warum fügen Sie es in PATH Variable, sagt man bash warum,

PATH The search path for commands. It is a colon-separated list of 
      directories in which the shell looks for commands (see COMMAND 
      EXECUTION below). A zero-length (null) directory name in the 
      value of PATH indicates the current directory. A null directory 
      name may appear as two adjacent colons, or as an initial or 
      trailing colon. The default path is system-dependent, and is set 
      by the administrator who installs bash. A common value is 
      ''/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin''. 
Verwandte Themen