Mein $ PATH sieht so aus:
/home/torbjorr/deployed/vector/x86_64-GNU%2fLinux:/home/torbjorr/deployed/typewriter/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mustudio/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mathext/x86_64-GNU%2fLinux:/home/torbjorr/deployed/doxymax/x86_64-GNU%2fLinux:/home/torbjorr/deployed/c2tex/x86_64-GNU%2fLinux:/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand:/home/torbjorr/deployed/x86_64-GNU%2fLinux/spellesc:/home/torbjorr/deployed/x86_64-GNU%2fLinux/projinit:/home/torbjorr/deployed/x86_64-GNU%2fLinux/herbs:/home/torbjorr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
In der bash kann ich problemlos den in befindlichen Zauberstab aufrufen
/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand
mögen
$ wand
(i) Mål från "main.cpp" har registrerats
(i) Skapar katalog "__wand_targets_dbg"
(i) Kör g++ "main.cpp" -fpic -L"/home/torbjorr/deployed" -g -Wall -std=c++11 -I"/home/torbjorr/deployed" -o "__wand_targets_dbg/cb-template
Im Bourneshell-Kompatibilitätsmodus kann der Zauberstab jedoch nicht gefunden werden:
$ wand
sh: 2: wand: not found
Das Problem scheint das% -Zeichen in diesen Pfaden zu sein. Dieses Zeichen wurde durch URL-Codierung hinzugefügt, sodass der Name "GNU / Linux" im Verzeichnisnamen verwendet werden kann, obwohl es sich nicht um einen gültigen Dateinamen handelt. Ist es möglich, den Namen in sh zum Laufen zu bringen, oder den Befehl sh als bash auszuführen? Dies bedeutet, dass Bash sich genauso verhält, obwohl es mit dem Befehl / bin / sh aufgerufen wurde, der sowieso auf Bash verweist.
sh
(es ist inbash
undzsh
obwohl in Ordnung). Das direkte Aufrufen der ausführbaren Datei funktioniertsh
. wirklich seltsam.