Мій $ PATH виглядає так:
/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
У баші, я можу без проблем викликати паличку, розташовану в
/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand
подобається
$ 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
Однак у режимі сумісності оболонки Bour паличку неможливо знайти:
$ wand
sh: 2: wand: not found
Схоже, проблема полягає у знаку% у цих шляхах. Цей знак був доданий кодуванням URL-адреси, тому ім'я "GNU / Linux" може використовуватися в імені каталогу, навіть якщо це неправдиве ім'я файлу. Чи можна отримати ім'я, що працює в sh, або змусити команду sh працювати як bash. Тобто, змусити bash поводитись так само, хоча він був викликаний командою / bin / sh, яка в будь-якому випадку посилається на баш.
sh
(це нормально вbash
іzsh
хоча). Безпосереднє виклик виконуваного файлуsh
; дійсно дивно.