Dlaczego sh nie znajduje plików na mojej ścieżce, które istnieją?


0

Kiedy wpisuję to w sh, wyświetla:

$ $PATH
sh: 12: /bin:/usr/bin: not found

Ale mam folder / usr / bin i to jest mnóstwo rzeczy.

To samo z Zsh:

 $PATH
zsh: no such file or directory: /bin:/usr/bin

Co do cholery ? Jak to naprawić?


Jakie polecenie próbujesz uruchomić? Czy próbujesz znaleźć polecenie, które jest na twojej drodze?
DavidPostill

@DavidPostill Myślę, że on pisze $PATHi wykonuje bezpośrednio .
Rakholiya Jenish

1
@RakholiyaJenish Tak, to jasne. Ale dlaczego on to robi? Co on naprawdę próbuje zrobić?
DavidPostill

Myślę, że próbujesz uciec echo $PATH?
xuhdev,

Odpowiedzi:


2

PATH to zmienna środowiskowa w systemie Linux i innych systemach operacyjnych typu Unix, która informuje powłokę, które katalogi mają wyszukiwać pliki wykonywalne (tj. Gotowe do uruchomienia programy) w odpowiedzi na polecenia wydawane przez użytkownika.

Aby zobaczyć wartość PATHzmiennej, zrób to jak echo $PATH. W twoim przypadku shposzuka pliku wykonywalnego /bini /usr/binkatalogu.

Możesz także używać swoich shpoleceń tak, /bin/commandjakby plik wykonywalny znajdował commandsię w /binkatalogu. Na przykład zamiast używać lsmożesz użyć, /bin/lsponieważ pisanie lsuruchamia plik wykonywalny lsobecny w /bin. Jeśli lsnie ma tam /bin, to zajrzy /usr/bin. Jeśli lsnadal nie zostanie znaleziony w obu katalogach, będzie narzekać.

Próbując użyć $PATHlub /bin:/usr/bin:bezpośrednio, shmyśli, że ma uruchomić binplik wykonywalny znajdujący się w katalogu /bin:/usr/. To jest powód, który daje directory or file not foundlub not foundbłąd.

Aby uzyskać szczegółowe informacje na temat ŚCIEŻKI .


Więc kiedy uruchomię to: ▶ echo $ PATH / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / games: / usr / local / games: / media / HDD / Code / android-sdk-linux / plateform-tools: / media / HDD / Code / android-sdk-linux / tools Nie ma już błędów i nie ma ich
N07070

1
@ N07070 To dlatego, że PATHjest zmienną środowiskową, której używasz do drukowania $PATH. Dlatego nie będzie żadnego błędu.
Rakholiya Jenish
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.