15

Есть ли эквивалент bin для Windows? Если так, как я могу получить к нему доступ из командной строки?

5 ответов5

24

На самом деле нет ничего особенного в /bin в Unix/Linux. Это просто место , где исполняемые файлы ( в том числе скриптов, которые не являются на самом деле бен ичными файлами) размещается по соглашению, и он включен в переменной PATH среды по умолчанию для всех пользователей. Как говорит Райан, каталог \Windows\System32 в Windows также находится в PATH для всех пользователей Windows (и, даже если это не так, загрузчик программ Windows будет там искать в любом случае).

Вы можете легко создать свой собственный эквивалент /bin в Windows. Чтобы сделать его общесистемным, поместите его где-нибудь в корень файловой системы (как в C:\bin) или в уже ограниченное местоположение, например \Windows\System32\bin), и добавьте его в переменную среды PATH для все пользователи. Для каждого пользователя создайте каталог в своем собственном профиле (%USERPROFILE%\bin) и добавьте его в переменную среды PATH своей учетной записи. Windows объединяет переменные среды PATH каждого пользователя и всей системы, поэтому все переменные PATH на компьютере также добавляются в PATH любого пользователя, но никак не наоборот.

Конечно, вам придется добавить файлы / scripts / shortcuts / symlinks в каталог bin . Установщики Windows не ожидают такой вещи и не будут автоматически помещать туда файлы, как это обычно делают установщики Linux.

6

Если вы имеете в виду bin, как в Unix/Linux, не совсем. Windows не использует FHS как общий для разных вариантов Unix. Хотя Windows хранит вещи повсюду, как в Unix.

Самым близким к /bin может быть c:\windows\system32

cd c:\windows\system32
5

Каталог bin в Unix-подобных системах содержит программы системы и установленные, но в Windows системные программы расположены в C:\Windows\System32 а установленные - в C:\Program Files .

2

Как уже говорили другие, не совсем понятно, что вы подразумеваете под "эквивалентом", но многие команды, обычно используемые в командной строке, либо встроены в cmd.exe (dir, copy, type, mkdir и т.д.), Даже если Unix-эквивалент будет в /bin, а другие (findstr, net, mountvol, shutdown, tasklist и т. д.) в основном находятся в (обычно) C:\Windows\System32 (32-битные версии на 64-битных системах в c:\Windows\SysWOW64).

Список команд можно отобразить с помощью команды help , в том числе некоторые из них встроены в cmd.exe, а некоторые являются внешними программами.

1

Я почти 30 лет обслуживаю серверы как для Windows, так и для Linux. По какой-то причине в начале я начал создавать папку bin в корне c: и я всегда помещал все свои скрипты и утилиты, которые я использую для обслуживания сервера. Иногда я добавляюсь на Путь, но не всегда. Думаю, мне всегда нравится идея папки bin в обеих системах, в которую помещаются мои скрипты.

Но да, ничего волшебного в этом нет, вы можете сделать что-то свое в каждой системе.

Спасибо,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .