Как да коригирате грешките „Командата не е намерена“ в командния ред на Mac
Съдържание:
Напредналите потребители на Mac, които използват командния ред, може понякога да срещнат съобщение за грешка „команда не е намерена“, когато се опитват да изпълнят нещо в командния ред. Грешката „командата не е намерена“ в терминала може да се появи по няколко причини в командния ред на MacOS и Mac OS X, както ще обсъдим тук и, разбира се, ще предложим решения на тези проблеми.
Защо виждате съобщения за грешка „командата не е намерена“ в командния ред
Четирите най-често срещани причини, поради които може да видите съобщението „командата не е намерена“ в командния ред на Mac са следните:
- синтаксисът на командата е въведен неправилно
- командата, която се опитвате да изпълните не е инсталирана
- командата беше изтрита или, по-лошо, системната директория беше изтрита или модифицирана
- $PATH на потребителите е непълен или $PATH е погрешно зададен, нулиран или изчистен – това е най-честата причина да видите съобщение „команда не е намерена“
За щастие можете да разрешите всички тези проблеми и отново да започнете да работите според очакванията. Ако просто сте въвели грешен синтаксис, правилното въвеждане решава това, лесно! Освен това ще започнем с най-честата причина, която е, че потребителският $PATH не е зададен правилно или е бил нулиран по някакъв начин.
Коригиране на терминални съобщения „Командата не е открита“ в Mac OS с настройка $PATH
Най-вероятната причина, поради която потребителите на Mac могат неочаквано да видят съобщението „Командата не е намерена“ в командния ред, е, че нещо се е объркало с потребителския $PATH или пътят, където се намира командата, не е зададен. Можете да проверите $PATH с „echo $PATH“, ако желаете, в противен случай можете просто да изпълните следните команди, за да зададете стандартния път по подразбиране, който Mac OS използва в командния ред:
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin "
Натиснете return и изпълнете командата си отново, трябва да работи добре.
Между другото, въпреки че тук се фокусираме върху Mac OS, същата идея се отнася и за други разновидности на unix и linux.
Имайте предвид, че ако предвидената команда, която се опитвате да използвате, се намира в нестандартна директория или на друго място (/usr/local/sbin/ и т.н.), винаги можете да добавите този нов $PATH в команден ред, за да посочите къде да търсите, ако е необходимо.
Преди, където се показва съобщението „командата не е намерена“ изпълнява прости команди ред ls и cd:
След това, като тези команди работят успешно, както се очаква:
Как става това? Понякога може да се изпълнява непълна или неправилна команда за експортиране на $PATH, грешка при коригиране на променливите на средата, наред с други причини.
Може да се наложи да обновите обвивката на командния ред, за да влезе промяната в сила. Ако рестартирате терминала и отново получите грешката „командата не е намерена“, тогава добавете командите за експортиране на $PATH към потребителските .bash_profile, .profile или съответния профил на обвивката, ако използвате алтернативна обвивка в приложението на терминала.
„Командата не е намерена“, защото командата не е инсталирана? Използвайте HomeBrew
Ако командата просто не е инсталирана на Mac, за често срещани примери като wget, htop или много други полезни unix команди, налични като Homebrew пакети, които иначе не са предварително инсталирани в Mac OS, тогава най-простото решение е да инсталирате и използвате Homebrew на Mac, за да получите достъп до тези помощни програми на командния ред. Homebrew е страхотен инструмент така или иначе, така че ако ще прекарвате време в терминала, вероятно ще го искате.
“Командата не е намерена” защото липсва системна директория? Възстановете липсващите системни файлове
От време на време потребителите на Mac могат да попаднат в ситуация, в която случайно или по невнимание са изтрили системни файлове от Mac OS. Обикновено това се случва, когато някой експериментира с командите rm/srm и заместващ знак или може би е станал прекалено ревностен с кошчето, когато е влязъл като root. Във всеки случай можете да прочетете тук как да възстановите изтрити или липсващи системни файлове в Mac OS и Mac OS X – обикновено това включва възстановяване от резервно копие или преинсталиране на самия системен софтуер.
Знаете ли друга причина, поради която може да видите съобщението за грешка „командата не е намерена“ в терминала на Mac OS? Може би имате по-добро решение от предложеното по-горе? Споделете с нас в коментарите по-долу!