Що означає ./ означає в Unix / Linux [дублювати]


1

На це запитання вже є відповідь:

Це може виглядати неправильно, але я знаю, що використання ./ ви в основному "BASH" ваші сценарії в середовищі Linux / Unix. Для користувачів Windows це так само, як запуск файлу .exe з командного рядка. Однак, я не розумію, чому використовувати ./

Це тому, що ./ означає "RUN" коротше або "./" має певне значення в UNIX подібному середовищі?

P.S. Я знаю, що cygwin дозволяє виконувати пакетні файли за допомогою префікса ./.

Відповіді:


3

./file функціонально еквівалентна file за будь-яких обставин, крім одного.

Виняток полягає в тому, що команда або сценарій без каталогу викликає оболонку для пошуку всіх каталогів у PATH змінна, яка зазвичай не включає поточний каталог.

Тому для запуску виконуваного файлу з поточного каталогу потрібно вказати шлях, і ./ це найпростіший спосіб зробити це.

У Windows еквівалент .\ є непотрібним, оскільки поточний каталог неявно шукається.


0

. вказує поточний каталог - папку, в якій ви знаходитесь, і / це роздільник каталогів, відокремлює ім'я батьківського каталогу від файлів для дітей або інших підкаталогів, наприклад: /bin/bash - тут / є кореневим каталогом, bin/ це його підкаталог і bash є файлом (як ви бачите, в іменах файлів немає роздільника, оскільки вони не можуть мати дитячих вузлів)

на вікнах (dos) все одно, очікуйте, що символ роздільника є зворотна риса ( \ )

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.