Fehler "Befehl nicht gefunden" beim Ausführen des Programms

3972
dckrooney

Ich versuche, ein Programm auszuführen, und stößt immer wieder auf einen "Command not found"Fehler.

Ich habe überprüft, ob sich das entsprechende Verzeichnis in $PATHdem Ordner befindet und dass die Datei selbst Ausführungsberechtigungen besitzt. Ich habe versucht, es im Verzeichnis auszuführen ./programname, aber ohne Glück.

Ich verwende CentOS 6 mit csh.

0
Von welchem ​​Programm sprichst du? Michael K vor 13 Jahren 0
Konsolenausgabe wäre hilfreich. Garrett vor 13 Jahren 0
@ MichaelK- Das Programm ist eine vorgefertigte ausführbare Datei. Es ist kein Standard-Linux-Dienstprogramm oder ähnliches dckrooney vor 13 Jahren 0
@ gman- Die einzige Ausgabe, die ich erhalte, ist "Programmname: Befehl nicht gefunden". dckrooney vor 13 Jahren 0
Was passiert, wenn Sie versuchen, es mit `/ full / path / to / programname` auszuführen? Wie sieht dein PFAD aus? David Schwartz vor 13 Jahren 0
@ DavidSchwartz- Wenn ich versuche, es mit dem absoluten Pfad auszuführen, erhalte ich "full / path / to / program / programname: Befehl nicht gefunden". Mein $ PATH enthält den vollständigen / Pfad / zu / Programm / als ersten Eintrag. dckrooney vor 13 Jahren 0
dcrooney - sieht es so aus, als könnten Sie den führenden Schrägstrich vermissen? / full / path / to / program Garrett vor 13 Jahren 0
Bitte posten Sie "ls -l / full / path / to / program / programname" Paul vor 13 Jahren 0

2 Antworten auf die Frage

1
Cougar

Überprüfen Sie die Ausgaben " Datei ./Programmname " und " Ldd ./Programmname ". Dies wird höchstwahrscheinlich für eine andere Plattform oder Architektur als die, die Sie ausführen, kompiliert.

Genau das ist passiert. Ich erhielt versehentlich eine 32-Bit-Binärdatei. Dies führte zu einem Problem, wenn versucht wurde, es auf einer 64-Bit-Maschine auszuführen :) Ich wünschte, der Fehler wäre beschreibender als "Befehl nicht gefunden", obwohl ... dckrooney vor 13 Jahren 0
0
RedGrittyBrick

Versuche dies

% ls -l /bin/date -rwxr-xr-x 1 root root 58960 Jun 26 2008 /bin/date  % !!:2 /bin/date Tue Nov 15 18:04:50 EST 2011 

Aber ersetzen Sie /bin/datemit Ihrem/full/path/to/programname

Das !!:2ist eine C-Shell-Historie !!, die den vorherigen Befehl ersetzt. :2bedeutet drittes Wort (sie sind von 0 aus nummeriert)