Вы на самом деле не задавали конкретного вопроса, но вот некоторые комментарии, которые, надеюсь, помогут вам понять, что происходит:
объявление 1
Если вы просто введите
$PATH
в ваш терминал оболочка expands переменную с именем $PATH и затем attempts выполнить ее contents что, очевидно, не имеет особого смысла в отношении $PATH . Попробуйте запустить
$ foo=ls
$ $foo
и вы поймете, что происходит. Обратите внимание, что в большинстве случаев вы не хотите сохранять команду в переменной, вам нужно прочитать BashFAQ/050, иначе я пытаюсь поместить команду в переменную, но сложные случаи всегда терпят неудачу! узнать немного о крайних случаях и почему это вообще плохая идея, если вы точно не знаете, что делаете.
объявление 2
Используя echo $var вы выводите содержимое переменной $var на экран. Обратите внимание, что может произойти word splitting и обычно вы хотите заключить в кавычки свои переменные, чтобы избежать этого:
$ echo "$var"
объявление 3
Это не работает, потому что cd является командой (ОК, обычно это встроенная оболочка), а .. является ее параметром, и эти два должны быть разделены пробелами, чтобы анализатор оболочки мог подобрать их как отдельные токены:
$ cd ..
Обратите внимание, что вы можете настроить псевдоним для работы cd.. :
$ alias cd..='cd ..'
но я бы советовал против этого и узнал, как правильно использовать оболочку Unix вместо того, чтобы подражать DOS .