Який еквівалент каталогу bin для Windows?


18

Чи існує еквівалент binдля Windows? Якщо так, то як я можу отримати доступ до нього з командного рядка?


5
Вам потрібно трохи більше розробити ... Що ви шукаєте та намагаєтесь досягти?
Ерік Ф

8
binне є особливим, він просто занесений у PATHсередовище цінним. Microsoft Windows також має цю змінну. Різниця полягає лише в тому, що він використовує ;замість цього :, а .напрошується додаткова невпевненість. Тож погляньте на цю змінну. Ви також можете відредагувати його, щоб додати binкаталог.
ctrl-alt-delor

Дивовижно, чого вдалого правки можна досягти. : P
Майкл Френк

1
@MichaelFrank Особливо, коли ви робите припущення та додаєте речі, про які не запитував ОП (тобто: "чи можна його створити в Windows"). Ми повинні бути обережними з цим.
Ƭᴇcʜιᴇ007

2
Або зробити заголовок неоднозначним, видаливши ключове слово типу "каталог". Спочатку я подумав, що тема стосується типу файлу.
тирса

Відповіді:


29

На /binUnix / Linux взагалі немає нічого особливого . Це просто місце , де виконувані файли ( в тому числі скриптів, які не є на самому справі бен ічнимі файлами) розміщується за згодою , і він включений в PATHзмінних середовищах за замовчуванням для всіх користувачів. Як каже Райан, \Windows\System32каталог у Windows є також PATHдля всіх користувачів Windows (і, навіть якщо це не так, завантажувач програм Windows як би там не шукав).

Ви можете легко створити власний еквівалент у /binWindows. Щоб зробити його загальносистемним, розмістіть його кудись як корінь файлової системи (як у C:\bin) або під уже обмеженим розташуванням на зразок \Windows\System32\bin) та додайте його до PATHзмінної середовища для всіх користувачів. Для місцеположення кожного користувача створіть каталог у власному профілі ( %USERPROFILE%\bin) та додайте його до PATHзмінної середовища вашого облікового запису . Windows поєднує в собі PATHзмінні середовища для користувача та загальної системи , тому все, що є в машинній PATHзмінній, також додається будь-якому користувачеві PATH, але не навпаки.

Звичайно, вам доведеться самостійно додавати файли / сценарії / ярлики / символьні посилання у свій binкаталог. Інсталятори Windows цього не очікують, і вони не розміщуватимуть файли автоматично, як зазвичай це роблять інсталятори Linux.


10
Я б не помістив binподібний каталог всередині System32. Це домени ОС. Краще покладіть його в інше місце, як-от запропонований c: \ bin, і відтворіть ACL. Це не повинно зайняти більше хвилини чи двох, якщо ви знаєте свій шлях навколо інтерфейсу ACL; трохи довше інакше, але все ж недовго.
CVn

1
Я додам, що стандартним способом отримання доступних для користувача інструментів CLI, доступних з командного рядка, є додавання до каталогу PATH їх інсталяційного каталогу (ймовірно, у% ProgramFiles%).
Єнс

Windows не поєднує змінні середовища з тим самим іменем - зазвичай, змінні середовища на рівні користувача переважають на системному рівні. PATHце окремий випадок, і AFAIK - єдиний, який таким чином обробляється Windows.
afrazier

1
ОП ніколи не запитував про створення каталогу бін або змінних оточуючих середовищ ... говорити про тематику.
Райан Бабчишин

1
З усією повагою запитуючи про "еквівалент binдля Windows", ми не запитуємо нічого, окрім змінних оточуючих середовищ, тому що це все, що /binє папкою в PATHзмінній середовища . Існують правила користувачів щодо того, як ви використовуєте папки типу /bin(або %WINDIR%, або %WINDIR%\System32), але система не знає і не піклується про них; все, що вона піклується (в цьому контексті), є PATHзмінною середовища.
CBHacking

6

Якщо ви маєте на увазі бін, як в Unix / Linux, не зовсім. Windows не використовує FHS, як поділяються різними варіантами Unix. Хоча Windows зберігає речі всюди, як і Unix.

Найближчим до / bin може бути c: \ windows \ system32

cd c:\windows\system32

1
Ні Windows, ні Linux (або FHS) "не зберігають речі всюди". Windows використовує насамперед каталог System32 та (на сьогоднішній день два) каталоги програмних файлів, щоб зберігати речі в порядку. У Linux (та багатьох інших системах, схожих на Unix) у вас є bin(загальні інструменти користувача) та (як правило, засоби sbinадміністрування системи) під кожним кореневим каталогом / usr та, можливо, / usr / local, залежно від системної важливості інструменту. (І / usr, і / usr / local можуть бути відокремлені від кореневої файлової системи.) Windows не має настільки чіткого поділу у файловій системі між типами інструментів.
CVn

1
Я думаю, ви щойно довели мою думку, є багато місць, де зберігаються виконувані файли. Це не випадково, якщо ви думаєте, що це я мав на увазі. Мій робочий стіл Linux має 479 каталогів нижче / usr, які містять якісь виконувані файли. Якби я перебрав це, я думаю, що деякі файли було б неналежним чином позначено як виконуваний файл, але ви зрозуміли, що це ідея. FHS визначає 7 стандартних батьківських каталогів, які можна використовувати для зберігання файлів, що виконується, багато з яких можуть мати підкаталоги. Windows схожий, оскільки він зберігає виконувані файли в декількох місцях під c: \ windows та c: \ Program Files.
Райан Бабчишин

У системах Ubuntu за замовчуванням передбачено 6 записів змінної PATH.
Райан Бабчишин

6

binКаталог в Unix-подібних системах , містить програми системи і встановлених з них, але в Windows, системні програми розташовані в C:\Windows\System32і встановлені ті , які , ймовірно , знаходиться в C:\Program Files.


2

Як говорили інші, не ясно, що саме ви маєте на увазі під "еквівалентом", але багато команд, які зазвичай використовуються в командному рядку, або вбудовані в cmd.exe (dir, копія, тип, mkdir тощо), навіть коли Unix еквівалент буде в / bin, а інші (findstr, net, mountvol, вимкнення, список завдань тощо) здебільшого розміщені в (як правило) C: \ Windows \ System32 (32-бітні версії 64-бітних систем c: \ Windows \ SysWOW64).

Список команд може бути показаний за допомогою helpкоманди, сюди входять деякі, які вбудовані в cmd.exe, і деякі, які є зовнішніми програмами.


1

Я майже 30 років підтримую сервери як Windows, так і Linux. Чомусь на початку я почав створювати папку bin у корені c: і завжди ставлю всі свої скрипти та утиліти, які використовую для підтримки сервера. Іноді я додавав до Шляху, але не завжди. Здається, мені завжди подобається ідея папки під назвою bin в обох системах, щоб розмістити свої сценарії.

Але так, нічого магічного в цьому не можна, ви можете зробити щось інше в кожній системі.

Спасибі,

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