Почему следующий код не работает?
#!/bin/sh
PATH=$PWD/Info
defaults read $PATH
Каждый раз, когда я это делаю, я получаю
./script: строка 3: значения по умолчанию: команда не найдена
Как только я делаю это в одну строку, это работает.
defaults read $PWD/Info
Это нормально. Мне просто интересно.
решение1
Потому что вы меняете $PATH
, которая является специальной переменной. Оболочка использует PATH для поиска исполняемых программ. defaults
вероятно, одна из них, но после удаления ее папки из PATH оболочка больше не может ее выполнить.
решение2
Добавьте к пути вместо его замены:
PATH=$PWD/Info:$PATH