Qual é o equivalente do diretório bin para Windows?

17

Existe um equivalente binpara o Windows? Em caso afirmativo, como posso acessá-lo no prompt de comando?

Toby Blunt
fonte
5
Você precisa elaborar um pouco mais ... O que você está procurando e tentando alcançar?
Eric F
8
binnão é especial, é apenas listado no PATHambiente valioso. O Windows da Microsoft também possui essa variável. A única diferença é que ele usa em ;vez de :, e há um implícito .no pedido de insegurança adicional. Então dê uma olhada nessa variável. Você também pode editá-lo para adicionar um bindiretório.
Ctrl-alt-delor
Incrível o que uma boa edição pode alcançar. : P
Michael Frank
1
@ MichaelFrank Especialmente quando você faz suposições e adiciona coisas que o OP não perguntou (por exemplo: "ele pode ser criado no Windows"). Devemos tomar cuidado com isso.
Ƭᴇcʜιᴇ007
2
Ou tornar o título ambíguo removendo uma palavra-chave como "diretório". No começo, pensei que o tópico fosse sobre um tipo de arquivo.
sawdust

Respostas:

29

Não há nada realmente especial /binno Unix / Linux. É apenas o local onde os arquivos executáveis (incluindo scripts, que não são realmente bin arquivos ary) são colocados por convenção , e está incluído na PATHvariável de ambiente por padrão para todos os usuários. Como Ryan diz, o \Windows\System32diretório no Windows também é PATHpara todos os usuários do Windows (e, mesmo que não seja, o carregador de programas do Windows pesquisará lá de qualquer maneira).

Você pode criar facilmente seu próprio equivalente /binno Windows. Para torná-lo em todo o sistema, coloque-o em algum lugar como a raiz do sistema de arquivos (como em C:\bin) ou em um local já restrito como \Windows\System32\bin) e adicione-o à PATHvariável de ambiente para todos os usuários. Para um local por usuário, crie o diretório em seu próprio perfil ( %USERPROFILE%\bin) e adicione-o à PATHvariável de ambiente da sua conta . O Windows combina as PATHvariáveis ​​de ambiente por usuário e em todo o sistema ; portanto, qualquer coisa na PATHvariável da máquina também é adicionada a qualquer usuário PATH, mas não o contrário.

Obviamente, você precisará adicionar arquivos / scripts / atalhos / links simbólicos ao seu bindiretório. Os instaladores do Windows não esperam isso e não colocam arquivos lá automaticamente da maneira que os instaladores do Linux normalmente fazem.

CBHacking
fonte
10
Eu não colocaria um bindiretório-like dentro do System32. Esses são os domínios do sistema operacional. Melhor colocá-lo em outro lugar, como o c: \ bin sugerido, e recriar as ACLs. Fazer isso não deve demorar mais de um minuto ou dois, se você conhece a interface da ACL; um pouco mais, caso contrário, mas ainda não muito tempo.
um CVn
1
Eu acrescentaria que a maneira padrão de obter ferramentas CLI instaladas pelo usuário acessíveis no prompt de comando é adicionar o diretório de instalação (provavelmente em% ProgramFiles%) ao PATH.
Jens
O Windows não combina variáveis ​​de ambiente com o mesmo nome - normalmente as variáveis ​​de ambiente no nível do usuário substituem as no nível do sistema. PATHé um caso especial e o AFAIK é o único tratado dessa maneira pelo Windows.
afrazier
O OP nunca perguntou sobre a criação de um diretório bin ou variáveis ​​de ambiente ... fale sobre off-topic.
Ryan Babchishin
1
Com todo o respeito, perguntar sobre "um equivalente ao binWindows" é perguntar sobre nada, exceto variáveis ​​de ambiente, porque isso é tudo /bin, uma pasta na PATHvariável de ambiente . Existem convenções de usuário sobre como você usa pastas como /bin(ou %WINDIR%, ou %WINDIR%\System32), mas o sistema não as conhece ou se importa; tudo o que importa (neste contexto) é a PATHvariável de ambiente.
precisa saber é o seguinte
6

Se você está se referindo ao bin, como no Unix / Linux, não é bem assim. O Windows não usa o FHS como compartilhado por diferentes variantes do Unix. Embora o Windows mantenha coisas por todo o lado, assim como o Unix.

A coisa mais próxima de / bin pode ser c: \ windows \ system32

cd c:\windows\system32
Ryan Babchishin
fonte
1
Nem o Windows nem o Linux (ou o FHS) "mantêm coisas por todo o lado". O Windows usa principalmente o diretório System32 e os (atualmente dois) diretórios dos Arquivos de Programas para manter as coisas razoavelmente ordenadas. No Linux (e em muitos outros sistemas semelhantes ao Unix), você tem bin(ferramentas comuns do usuário) e sbin(convencionalmente, ferramentas de administração do sistema) em cada diretório raiz, / usr e possivelmente / usr / local, dependendo da importância do sistema na ferramenta. (Ambos / usr e / usr / local podem ser separados do sistema de arquivos raiz.) O Windows não possui uma separação tão clara no sistema de arquivos entre os tipos de ferramentas.
um CVn
1
Acho que você acabou de provar meu argumento, há muitos lugares onde os executáveis ​​são armazenados. Não é aleatório, se você acha que foi isso que eu quis dizer. Minha área de trabalho Linux possui 479 diretórios abaixo / usr, que contêm arquivos executáveis ​​de algum tipo. Se eu o selecionasse, acho que alguns arquivos seriam inapropriadamente marcados como executáveis, mas você entendeu. O FHS especifica 7 diretórios pai padrão que podem ser usados ​​para armazenamento executável, muitos dos quais podem ter subdiretórios. O Windows é semelhante, pois armazena executáveis ​​em vários locais em c: \ windows e em c: \ Arquivos de Programas.
Ryan Babchishin
Existem 6 entradas na variável PATH por padrão nos sistemas Ubuntu.
Ryan Babchishin
6

O bindiretório nos sistemas do tipo Unix contém os programas do sistema e os instalados, mas no Windows, os programas do sistema estão localizados C:\Windows\System32e os instalados provavelmente C:\Program Files.

Hamza Abbad
fonte
2

Como já foi dito, não está claro exatamente o que você quer dizer com "equivalente", mas muitos dos comandos comumente usados ​​na linha de comando são criados no cmd.exe (dir, cópia, tipo, mkdir, etc), mesmo quando o equivalente no Unix estaria em / bin e outros (findstr, net, mountvol, shutdown, tasklist, etc.) estão localizados principalmente em (normalmente) C: \ Windows \ System32 (versões de 32 bits em sistemas de 64 bits em c: \ Windows \ SysWOW64).

Uma lista de comandos pode ser mostrada com o helpcomando, incluindo alguns que estão embutidos no cmd.exe e outros que são programas externos.

Random832
fonte
1

Eu tenho mantido servidores por quase 30 anos, tanto Windows quanto Linux. Por alguma razão, no começo, comecei a criar uma pasta bin na raiz de c: e sempre coloco todos os meus scripts e utilitários que utilizo para manter o servidor. Às vezes eu adicionava ao caminho, mas nem sempre. Acho que sempre gosto da ideia de uma pasta chamada bin nos dois sistemas para inserir meus scripts.

Mas sim, nada de mágico nisso, você pode fazer algo diferente em cada sistema.

obrigado,

user510304
fonte