Om du är en Linux-användare har du troligen stött på felet "kommandot hittades inte" på Linux-terminalen.
Ofta när du stöter på det här felet får du ett förslag om att installera ett program, men det finns flera potentiella orsaker till felet "kommandot hittades inte".
Förstå miljövariabler och skiftlägeskänslighet
Innan vi går om att åtgärda vanliga orsaker till felet är det viktigt att uppskatta några kritiska egenskaper hos Linux-kommandon.
Till skillnad från Windows är alla kommandon, filnamn och kataloger på Linux- och Unix-system skiftlägeskänsliga. Det betyder att alla kommandon och deras motsvarande argument eller alternativ ska visas precis som de är avsedda att. Naturligtvis är de flesta kommandon gemener.
Miljövariabler spelar en viktig roll i Linux. De innehåller värdefull information om din inloggningssession och andra viktiga detaljer.
När du kör ett kommando på Linux kommer ditt system att söka i dina nuvarande variabler, specifikt PATH-variabeln, för att hitta kommandot eller programmet som du vill köra. Om kommandot inte hittas får du ett felmeddelande om att det inte hittas.
Med denna förståelse, så här kan du felsöka felet "kommandot hittades inte" på Linux.
1. Kontrollera efter syntaxfel
Du bör köra alla Linux-kommandon exakt som de ser ut skiftande. Till exempel behandlar skalet "ls" och "LS" som olika kommandon på Linux.
Om ditt kommando innehåller argument, se till att du använder rätt skiftläge. Kommandot ssh för portvidarebefordran har formatet:
ssh-fN-L 80:lokal värd:8080
"L" och "N"-argumenten, i det här fallet, måste vara versaler, annars får du ett fel.
I vissa fall kan alternativen eller argumenten kräva ett föregående bindestreck (-) eller dubbelt bindestreck (--), och vissa argument kan behöva omges av citattecken eller hakparenteser.
Se till att du använder rätt kommando. Dubbelkolla stavningen av kommandot du försöker använda och se till att du använder rätt skiftläge.
2. Inkludera sökvägen till din körbara fil
Skript spelar en viktig roll i Linux eftersom de låter dig automatisera vardagliga uppgifter. Om du skriv ditt eget Bash-program eller använder vissa tredjepartsprogram, måste du ange hela sökvägen till programmet för att köra det framgångsrikt.
När du laddar ner Open Virtualization Format Tool, till exempel, kan du installera det i vilken katalog du vill. Nu, när du försöker köra ovftool kommandot från en annan katalog än den det installerades i, får du felet "kommandot hittades inte".
För att köra kommandot korrekt måste du ange hela sökvägen till programmets körbara fil. Om du till exempel har installerat ovftool i /opt/ovf katalogen och sedan köra ovftool, måste du använda följande kommando:
sudo /opt/ovf/ovftool
Var också uppmärksam på snedstreck. Till skillnad från Windows, som använder snedstreck bakåt, använder Linux snedstreck framåt. Använd Flik automatisk kompletteringsfunktion i din terminal för att undvika stavfel i katalognamn.
3. Använd miljövariabler
Om du tycker att det är tröttsamt att specificera en hel katalog till ett kommando, överväg att lägga till programmets körbara program till din PATH-miljövariabel.
För att lägga till ett körbart program till PATH, kör bara ett kommando i följande format:
PATH = $PATH:/opt/sökväg/till/ditt/program
Till exempel, för att lägga till Microsoft .NET tools-programmet till din PATH, kör kommandot:
exportera PATH=$PATH:~/.dotnet/verktyg
Miljövariabler skrivs till ~/.bashrc fil på Bash eller ~/.zshrc fil om du använder Z-skalet.
För att uppdatera och tillämpa ändringarna du har gjort på ~/.bashrc fil utan att logga ut, kör källkommandot enligt följande:
källa ~/.bashrc
Du kan kontrollera om din programsökväg har lagts till i PATH-variabeln med hjälp av kommandot:
eko $PATH
4. Se till att programmet är installerat
Ibland kan orsaken till felet "kommandot hittades inte" helt enkelt bero på att programmet inte ens är installerat i första hand.
Om kommandot du försöker köra inte är det ett inbyggt skalkommando, kan det vara så att programmet inte är installerat på ditt system. I det här fallet måste du installera programmet eller paketet som innehåller det.
Beroende på din distro, använd standardpakethanteraren för att installera den nödvändiga programvaran. På Debian-baserade distros, använd kommandot apt och använd DNF eller YUM på RHEL-baserade distros.
5. Använd de korrekta privilegierna
Om du är mycket säker på att programmet eller kommandot du försöker köra finns på ditt system och du använder rätt syntax kan det vara ett problem med behörigheterna.
I likhet med Windows behöver du förhöjda privilegier för att köra vissa program på Linux. Om så är fallet, se till att du använder sudo eller kör programmet som root-användare.
Använd miljövariabler på Linux
Se till att du använder rätt syntax när du kör Linux-kommandon och överväg att lägga till de program som du ofta kör till dina miljövariabler.
Miljövariabler spelar en så viktig roll i Linux att förståelse av dem är nyckeln för din dagliga användning av operativsystemet.