Mam wywołanie binarne testbin
w /x/eng/r1/scratch/user/.jef/testbin
.
Kiedy idę do innego katalogu i próbuję wykonać plik binarny jako
$ /x/eng/r1/scratch/user/.jef/testbin
Dostaję błąd:
cannot find /x/eng/r1/scratch/user/.jef/testbin.bin
ale kiedy jestem w środku .jef
katalog i wykonaj go jak
$ testbin
binarny jest wykonywany
Dlaczego szuka a .bin
plik w pierwszej kolejności?
testbin
ale błąd dotyczytestbin.bin
. Który to jest? A dokładniej w jaki sposób próbujesz to wykonać?type -f testbin
testbin.bin
, ale nie potrafi poprawnie zlokalizować pliku icd
i / lub wykonaj go z pełną / względną ścieżką, tak jak tego potrzebuje.Odpowiedzi:
Ponieważ jest to mało prawdopodobne
/x/eng/r1/scratch/user/.jef
jest na twojej ścieżce, działatestbin
sam, kiedy/x/eng/r1/scratch/user/.jef
to katalog roboczy nie jest taki sam jak działający/x/eng/r1/scratch/user/.jef/testbin
z innego katalogu. Bieganietestbin
zamiast tego działa (z dźwięku)/usr/bin/testbin
, który jest samodzielnym plikiem binarnym. (Brzmi jak.../.jef/testbin
to po prostu opakowanie (być może nawet skrypt powłoki), który wywołuje brakującetestbin.bin
.)źródło