Значение ./ перед командой [дубликат]

Пока я выполнял программу на C в терминале, я написал:

gcc -o demo demo.c
./demo

На самом деле я сомневаюсь, почему мы пишем ./ до demo ] и что это значит?

0
задан 24 September 2013 в 10:59

4 ответа

Когда мы выполняем любую команду в терминале, она будет искать ее в переменной окружения PATH. Используя ./ (относительный путь), мы говорим оболочке искать эту команду в нашем текущем каталоге.

Проверить echo $PATH

Существует два способа выполнения любых команд

  1. Ввод своего пути в переменную среды PATH
  2. Использование полного пути или относительный путь к этой программе (напр. / opt / xyz / bin / someprogramme)
0
ответ дан 24 September 2013 в 10:59

Когда bash интерпретирует командную строку, он ищет команды в местах, описанных в переменной $ PATH. Чтобы увидеть его, наберите:

echo $PATH

Обычно его нет в этом списке. Причина отсутствия текущего каталога в этом списке - безопасность.

В ./ говорится: ищите мою команду в текущем каталоге, а не во всех каталогах, указанных в $ PATH.

Подробнее о:

0
ответ дан 24 September 2013 в 10:59

Вы ставите «./» перед каждой программой, которую хотите выполнить.

В противном случае терминал не знает, что делать с демонстрационным файлом

.
0
ответ дан 24 September 2013 в 10:59

«./» перед именем файла означает «выполнить этот файл в текущем каталоге», если файл, который вы хотите выполнить, не находится в том же каталоге, в котором вы находитесь, вам нужно будет указать путь к файлу как это:

Xxxxx @ xxxx / Documents / filetoexecute

0
ответ дан 24 September 2013 в 10:59

Другие вопросы по тегам:

Похожие вопросы: