Beheben Sie den Fehler $' ': Befehl nicht gefunden in Java
-
Ursache des Fehlers
$'\r': Befehl nicht gefunden
in Java -
Beheben Sie den Fehler
$'\r': command not found
in Java
Dieses Tutorial demonstriert den Fehler $'\r': command not found
in Java.
Ursache des Fehlers $'\r': Befehl nicht gefunden
in Java
Unterschiedliche Betriebssysteme verwenden unterschiedliche Befehle für denselben Zweck. Der Fehler $'\r': Befehl nicht gefunden
tritt auf, wenn wir versuchen, Befehle im Unix-Stil auf der Linux-Plattform von Plattformen wie Cygwin auszuführen.
Das \r
wird für den Wagenrücklauf verwendet, was normalerweise bedeutet, dass der Cursor ganz nach links gehen soll. Hier ist ein Beispiel für diesen Fehler.
Lassen Sie uns versuchen, den Pfad JAVA_HOME
mit Cygwin Bash unter Windows dauerhaft festzulegen. Verwenden Sie die folgenden Bash-Befehle und -Konfigurationen:
.bashrc
:
export PATH="$JAVA_HOME/bin:$PATH"
export JAVA_HOME=$JAVA_HOME:"/cygdrive/C/Program Files/Java/jdk-17.0.2"
.bash_profile
:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
Der obige Code besteht nun aus zwei Dateien in Bash, die versuchen, den Pfad JAVA_HOME
dauerhaft festzulegen.
Wenn Sie diese beiden Dateien mit Cygwin ausführen, lautet die Ausgabe:
-bash: $'\377\376if': command not found
-bash: $'then\r': command not found
: No such file or directory
-bash: /cygdrive/c/Users/Sheeraz//.bash_profile: line 3: syntax error near unexpected token `fi'
-bash: /cygdrive/c/Users/Sheeraz//.bash_profile: line 3: `fi'
Jetzt zeigt der Fehler, dass der Befehl nicht funktioniert. Der Grund ist, dass Windows das Unix/OSX-Format der Befehle nicht unterstützt und Cygwin auch als Plattform gilt, um Linux-Unix-Anwendungen unter Windows auszuführen.
Beheben Sie den Fehler $'\r': command not found
in Java
Schauen wir uns die Lösungen für diesen Fehler an.
Lösung 1
Wenn der Fehler $'\r': Befehl nicht gefunden
unter Windows oder Cygwin auftritt, ist die beste Lösung die Verwendung des Befehls dos2unix
.
dos2unix
ändert das Zeilenumbruch- oder\r
-Zeichen, damit es mit Unix- oder Cygwin-Plattformen kompatibel ist.- Bevor Sie den Befehl
dos2unix
verwenden, müssen Sie die Datei sichern, da dieser Befehl die Datei ändert. Wenn Sie es nicht gesichert haben, verwenden Sie den Befehlunix2dos
, der die Änderung rückgängig macht. - Der Befehl
dos2unix
wird auf macOS X nicht unterstützt. - Bevor Sie diesen Befehl verwenden, müssen Sie
dos2unix
installieren.
Lösung 2
Wenn Sie dos2unix
nicht installieren möchten, gibt es eine andere Lösung:
-
Wir können das Zeichen
\r
entfernen, das diesen Fehler verursacht. Verwenden Sie den folgenden Befehl, um dieses nachgestellte Zeichen zu entfernen:sed -i 's/\r$//' filename
-
Hier ist Dateiname die Datei, die den Fehler verursacht.
-
Die Option
-i
wird für die direkte Bearbeitung verwendet. -
Der Befehl löscht das nachgestellte
\r
aus der Eingabedatei.
Lösung 3
Dieser ist einfacher. Wir können Software wie Notepad++ oder VScode verwenden, um das Befehlsformat zu ändern.
Zum Beispiel in Notepad++:
-
Öffnen Sie die Bash-Datei in Notepad++.
-
Gehen Sie zu Konvertierung
Bearbeiten -> EOL
. -
Wählen Sie das Unix/OSX-Format.
-
Speichern Sie Ihre Datei und führen Sie sie aus.
Diese drei Lösungen lösen den oben beschriebenen Fehler.
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn FacebookVerwandter Artikel - Java Error
- Adresse wird bereits verwendet JVM_Bind-Fehler in Java
- Android Java.Lang.IllegalStateException behoben: Methode der Aktivität konnte nicht ausgeführt werden
- Ausnahme im Hauptthread Java.Lang.ClassNotFoundException in IntelliJ IDEA
- Ausnahme im Hauptthread Java.Lang.NoClassDefFoundError
- Beheben Sie das Problem, dass Java nicht installiert werden kann. Es gibt Fehler in den folgenden Schaltern
- Beheben Sie den Fehler `Es wurde keine Java Virtual Machine gefunden` in Eclipse