Tương đương với thư mục bin cho Windows là gì?


17

Có tương đương binvới Windows không? Nếu vậy, làm thế nào tôi có thể truy cập nó từ dấu nhắc lệnh?


5
Bạn cần phải giải thích thêm một chút ... Bạn đang tìm kiếm điều gì và đang cố gắng đạt được điều gì?
Eric F

8
binkhông đặc biệt, nó chỉ được liệt kê trong PATHmôi trường có giá trị. Windows của Microsoft cũng có biến này. Chỉ có sự khác biệt là nó sử dụng ;thay vì :, và có một ngụ ý .tại cầu xin cho sự không an toàn thêm. Vì vậy, có một cái nhìn trong biến này. Bạn cũng có thể chỉnh sửa nó để thêm một binthư mục.
ctrl-alt-delor 06/10/2015

Tuyệt vời những gì một chỉnh sửa tốt có thể đạt được. : P
Michael Frank

1
@MichaelFrank Đặc biệt là khi bạn đưa ra các giả định và thêm những thứ mà OP không hỏi về (ví dụ: "nó có thể được tạo trong Windows"). Chúng ta nên cẩn thận về điều đó.
Ƭᴇcʜιᴇ007

2
Hoặc làm cho tiêu đề mơ hồ bằng cách xóa một từ khóa như "thư mục". Lúc đầu tôi nghĩ chủ đề là về một loại tập tin.
mùn cưa

Câu trả lời:


29

Không có gì thực sự đặc biệt về /binUnix / Linux cả. Đây chỉ là vị trí nơi các tệp thực thi (bao gồm các tập lệnh, thực tế không phải là tệp bin ary) được đặt theo quy ước và nó được bao gồm trong PATHbiến môi trường theo mặc định cho tất cả người dùng. Như Ryan nói, \Windows\System32thư mục trên Windows cũng PATHdành cho tất cả người dùng Windows (và thậm chí nếu không, trình tải chương trình của Windows sẽ tìm kiếm ở đó bằng mọi cách).

Bạn có thể dễ dàng tạo tương đương của riêng bạn /bintrên Windows. Để làm cho nó toàn hệ thống, đặt nó ở đâu đó như gốc của hệ thống tệp (như trong C:\bin) hoặc dưới một vị trí đã bị hạn chế như \Windows\System32\bin) và thêm nó vào PATHbiến môi trường cho tất cả người dùng. Đối với vị trí trên mỗi người dùng, hãy tạo thư mục trong hồ sơ của riêng bạn ( %USERPROFILE%\bin) và thêm nó vào PATHbiến môi trường của tài khoản của bạn . Windows kết hợp các PATHbiến môi trường trên mỗi người dùng và toàn hệ thống , do đó, mọi thứ trong PATHbiến máy cũng được thêm vào bất kỳ người dùng nào PATH, nhưng không phải là cách khác.

Tất nhiên, bạn sẽ phải tự thêm tệp / tập lệnh / phím tắt / liên kết vào binthư mục của mình. Các trình cài đặt Windows không mong đợi điều đó và sẽ không tự động đặt các tệp ở đó theo cách mà các trình cài đặt Linux thường làm.


10
Tôi sẽ không đặt một binthư mục giống như trong System32. Đó là miền của HĐH. Tốt hơn nên đặt nó ở nơi khác, như c: \ bin được đề xuất của bạn và tạo lại ACL. Làm như vậy không nên mất hơn một hoặc hai phút nếu bạn biết cách của mình xung quanh giao diện ACL; hơi lâu khác, nhưng vẫn không lâu.
một CVn

1
Tôi sẽ nói thêm rằng cách tiêu chuẩn để có được các công cụ CLI do người dùng cài đặt có thể truy cập từ dấu nhắc lệnh là thêm thư mục cài đặt của chúng (Có khả năng trong% ProgramFiles%) vào PATH.
Jens

Windows không kết hợp các biến môi trường với cùng tên - thông thường các biến môi trường ở cấp độ người dùng sẽ ghi đè lên các biến cấp độ hệ thống. PATHlà trường hợp đặc biệt và AFAIK là trường hợp duy nhất được Windows đối xử theo cách đó.
afrazier 7/10/2015

OP không bao giờ hỏi về việc tạo thư mục bin hoặc biến môi trường ... nói về chủ đề ngoài luồng.
Ryan Babchishin

1
Với tất cả sự tôn trọng, việc hỏi về "tương đương binvới Windows" là không hỏi gì ngoài các biến môi trường, bởi vì đó là tất cả những gì /bin, một thư mục trong PATHbiến môi trường . Có những quy ước người dùng xung quanh cách bạn sử dụng các thư mục như /bin(hoặc %WINDIR%, hoặc %WINDIR%\System32), nhưng hệ thống không biết hoặc không quan tâm đến chúng; tất cả những gì nó quan tâm (trong bối cảnh này) là PATHbiến môi trường.
CBHacking

6

Nếu bạn đang đề cập đến bin, như trong Unix / Linux, thì không. Windows không sử dụng FHS như được chia sẻ bởi các biến thể Unix khác nhau. Mặc dù Windows không giữ mọi thứ ở mọi nơi, giống như Unix.

Thứ gần nhất với / bin có thể là c: \ windows \ system32

cd c:\windows\system32

1
Cả Windows và Linux (hoặc FHS) đều không "giữ mọi thứ ở mọi nơi". Windows sử dụng chủ yếu thư mục System32 và thư mục Tệp chương trình (ngày nay là hai) để giữ mọi thứ theo trật tự hợp lý. Trong Linux (và nhiều hệ thống tương tự Unix khác), bạn có bin(công cụ người dùng phổ biến) và sbin(thông thường, công cụ quản trị hệ thống) trong mỗi thư mục gốc, / usr và có thể / usr / local, tùy thuộc vào tầm quan trọng hệ thống của công cụ. (Cả / usr và / usr / local có thể tách rời khỏi hệ thống tệp gốc.) Windows không có sự phân tách rõ ràng trong hệ thống tệp giữa các loại công cụ.
CVn

1
Tôi nghĩ rằng bạn vừa chứng minh quan điểm của tôi, có nhiều nơi lưu trữ thực thi. Nó không phải là ngẫu nhiên, nếu bạn nghĩ đó là những gì tôi muốn nói. Máy tính để bàn Linux của tôi có 479 thư mục bên dưới / usr một mình có chứa các tệp thực thi nào đó. Nếu tôi chọn qua nó, tôi đoán một số tệp sẽ được đánh dấu không phù hợp là có thể thực thi được, nhưng bạn hiểu ý. FHS chỉ định 7 thư mục mẹ chuẩn có thể được sử dụng để lưu trữ thực thi, nhiều thư mục có thể có thư mục con. Windows cũng tương tự, vì nó lưu trữ các tệp thực thi ở một số nơi trong c: \ windows và trong c: \ Program Files.
Ryan Babchishin

Có 6 mục trong biến PATH theo mặc định trên các hệ thống Ubuntu.
Ryan Babchishin

6

Thư mục bintrong các hệ thống giống như Unix chứa các chương trình của hệ thống và các chương trình đã cài đặt, nhưng trong Windows, các chương trình hệ thống được đặt trong C:\Windows\System32và các chương trình được cài đặt có khả năng nằm trong C:\Program Files.


2

Như những người khác đã nói, không rõ ràng chính xác bạn có nghĩa là "tương đương", nhưng nhiều lệnh thường được sử dụng trên dòng lệnh được tích hợp vào cmd.exe (dir, sao chép, gõ, mkdir, v.v.) ngay cả khi tương đương Unix sẽ ở trong / bin và các thứ khác (findstr, net, mountvol, shutdown, tasklist, v.v.) hầu hết nằm ở (thường) C: \ Windows \ System32 (phiên bản 32 bit trên các hệ thống 64 bit trong c: \ Windows \ SysWOW64).

Một danh sách các lệnh có thể được hiển thị với helplệnh, bao gồm một số được tích hợp sẵn vào cmd.exe và một số là các chương trình bên ngoài.


1

Tôi đã duy trì các máy chủ trong gần 30 năm cả Windows và Linux. Vì một số lý do khi bắt đầu, tôi bắt đầu tạo một thư mục bin trong thư mục gốc của c: và tôi luôn đặt tất cả các tập lệnh và tiện ích mà tôi sử dụng để duy trì máy chủ. Đôi khi tôi thêm vào Path nhưng không phải lúc nào cũng vậy. Đoán tôi luôn thích ý tưởng về một thư mục có tên bin trên cả hai hệ thống để đưa tập lệnh của tôi vào.

Nhưng vâng, không có gì kỳ diệu về nó, bạn có thể làm một cái gì đó khác nhau trên mỗi hệ thống.

cảm ơn,

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.