it-swarm-vi.tech

Làm cách nào tôi có thể sửa đổi biến môi trường người dùng PAG mà không cần đăng xuất?

Câu hỏi khá nhiều nói lên tất cả; Tôi có người dùng không có quyền chỉnh sửa biến môi trường PATH của riêng họ và nếu họ cần sửa đổi nó vì một số lý do, họ cần phải đăng xuất để Quản trị viên có thể đăng nhập và thay đổi PATH cho họ, trước khi người dùng đăng nhập lại. Đây không phải là lý tưởng. Nó có thể được thực hiện một cách tốt hơn?

24
ninesided

Bạn luôn có thể gọi Shell cmd với quyền quản trị viên (hoặc bất kỳ phương thức runas nào khác) và sử dụng một công cụ như SETX để sửa đổi đường dẫn vĩnh viễn. Các shell hiện có và/hoặc các chương trình đang chạy có thể sẽ sử dụng đường dẫn cũ, nhưng bất kỳ Shell/chương trình mới nào cũng sẽ sử dụng các cài đặt mới.

6
Berzemus

Đối với tài khoản không có đặc quyền quản trị viên:

Mở "Tài khoản người dùng" và chọn "Thay đổi biến môi trường của tôi" ( http://support.Microsoft.com/kb/931715 ).

Hộp thoại này sẽ hiển thị cho bạn các biến người dùng hiện tại cũng như các biến hệ thống. Bạn có thể cần thêm một biến PATH cục bộ nếu bạn chưa có.

Ví dụ, để cập nhật Đường dẫn của bạn để bao gồm thư mục Python 3.3, nhấp vào Mới:

Tên biến: PATH Giá trị biến:% PATH%; C:\Python33

Điều này tạo ra một PATH cục bộ bằng cách lấy PATH hệ thống hiện tại và thêm vào nó.

25
Curtis Nelson

Máy tính/Thuộc tính/Nâng cao/Biến môi trường của tôi. Các thay đổi có hiệu lực ngay lập tức ngoại trừ đối với lệnh đã mở Cửa sổ nhắc nhở. Không cần phải đăng xuất và đăng nhập lại.

LƯU Ý : Nếu bạn không có quyền truy cập vào cửa sổ đó, bạn có thể có được nó bằng cách chạy rundll32 sysdm.cpl,EditEnvironmentVariables từ cửa sổ Run hoặc dòng lệnh.

11
John Gardeniers

Trong một lệnh Nhắc bạn có thể làm:

set PATH=C:\somedir;%PATH%

nhưng điều này chỉ thay đổi nó cho lệnh Prompt (và bất kỳ ứng dụng nào được khởi chạy từ lệnh Prompt). Giả sử bạn muốn điều này áp dụng cho mọi thứ mà người dùng thực hiện, bạn sẽ thay đổi các biến môi trường của người dùng. Nhấp chuột phải vào Biến máy tính, Thuộc tính, Nâng cao, Môi trường của tôi và trong "Biến người dùng để thêm biến:

PATH = C:\whatever

Khi người dùng đăng nhập vào đây sẽ được thêm vào đường dẫn toàn hệ thống.

4
John Rennie

Người dùng có thể đặt biến PATH tại một Dấu nhắc lệnh sẽ ghi đè biến PATH trên toàn hệ thống, ngay cả khi người dùng không có quyền "Quản trị viên". Thay đổi sẽ có hiệu lực đối với các quy trình mới mà người dùng bắt đầu từ lệnh đó Nhắc. (Quá trình Explorer hiện tại và bất kỳ quy trình nào khác mà người dùng đang chạy khi thực hiện thay đổi, sẽ không "thấy" thay đổi.)

2
Evan Anderson

Ngoài các câu trả lời ở trên, bạn cũng có thể cập nhật sổ đăng ký (có ưu điểm là có thể viết được script):

Biến PATH được lưu trữ trong HKEY_CURRENT_USER\Môi trường.

Để đọc đường dẫn hiện tại:

reg query HKEY_CURRENT_USER\Environment /v PATH

Để nối một giá trị c:\somedir vào đường dẫn:

reg add HKEY_CURRENT_USER\Environment /v PATH /d "%PATH%;c:\somedir"

Lưu ý rằng các quy trình đọc môi trường khi được khởi chạy, vì vậy bạn sẽ phải khởi động lại quy trình cho nó để có đường dẫn mới.

Cập nhật: Một cách khác tôi tìm thấy là chạy:

rundll32 sysdm.cpl,EditEnvironmentVariables

Một lần nữa, applet này chỉnh sửa registry và có tác dụng tương tự như trên.

1
Kristopher Noronha