Bir kullanıcının PATH ortam değişkenini çıkış yapmadan nasıl değiştirebilirim?


22

Soru hemen hemen her şeyi söylüyor; Kendi PATHortam değişkenlerini düzenleme iznine sahip olmayan kullanıcılarım var ve bazı nedenlerden dolayı değiştirilmeleri gerekiyorsa, oturumu kapatmaları gerekir, böylece bir PATHkullanıcı tekrar giriş yapmadan önce bir Yönetici giriş yapabilir ve onlar için değişiklik yapabilir. . Bu ideal değil. Daha iyi bir şekilde yapılabilir mi?


Merak ediyorum - ama kullanıcıların kendi varsayılan ortamlarını değiştirmelerini tam olarak nasıl önlüyorsunuz? Bilgisayarım / Özellikler / Gelişmiş / Çevre Değişkenine erişimlerini engelliyor musunuz? Yine de HKCU’yu / Çevreyi çeşitli yöntemlerle değiştirebilirler.
Cooper


Grup politikası tercihleri? Sadece bir düşünce.
Simon Catlin

Yanıtlar:


6

Yönetici haklarına sahip bir cmd kabuğunu her zaman çağırabilir (veya başka herhangi bir runas yöntemini) ve yolu kalıcı olarak değiştirmek için SETX gibi bir araç kullanabilirsiniz . Mevcut mermiler ve / veya çalışan programlar muhtemelen eski yolu kullanıyor olacak, ancak herhangi bir yeni kabuk / program yeni ayarları kullanacaktır.


25

Yönetici ayrıcalıklarına sahip olmayan hesaplar için:

"Kullanıcı Hesapları" nı açın ve "Çevre değişkenlerimi değiştir" i seçin ( http://support.microsoft.com/kb/931715 ).

Bu iletişim kutusu, mevcut kullanıcı değişkenlerinizi ve sistem değişkenlerini gösterir. Henüz yapmadıysanız, yerel bir PATH değişkeni eklemeniz gerekebilir.

Yolunuzu Python 3.3 dizinini içerecek şekilde güncellemek için, örneğin Yeni:

Değişken Adı: PATH Değişken Değeri:% PATH%; C: \ Python33

Bu, mevcut PATH sistemini alarak ve ona ekleyerek yerel bir PATH oluşturur.


2
Bu cevabı düşünmeliyim, " Kendi PATH’lerini düzenleme iznine sahip olmayan kullanıcılar var ..." ve bunu kalıcı olarak , diğerlerinden daha iyi yapıyor . Çok iyi yapmışsın. Bunu Bilgisayarım'dan tıklamanın neden yönetici korumalı olmadığını merak ediyor musunuz? Yerel olmayan alanları, UI bu şekilde erişildiğinde yaptığınız gibi korur.
ruffin

10

Bilgisayarım / Özellikler / Gelişmiş / Çevre Değişkenleri. Buradaki değişiklikler , zaten açık olan komut istemi pencereleri haricinde hemen etkili olur . Oturumu kapatıp tekrar açmanıza gerek yok.

NOT: Bu pencereye erişiminiz yoksa rundll32 sysdm.cpl,EditEnvironmentVariables, Çalıştır penceresinden veya komut satırından çalıştırarak elde edebilirsiniz.


ağımdaki normal kullanıcılar, kendi ortam değişkenlerini bu şekilde değiştiremezler, eğer o ekranı "farklı çalıştır ..." veya benzeri bir şeyle yükseltilmiş
mahremiyetlerle açamazsam

4

Komut isteminde şunları yapabilirsiniz:

set PATH=C:\somedir;%PATH%

ancak bu yalnızca komut istemi için değiştirir (ve komut isteminden başlatılan tüm uygulamalar için). Bunun, kullanıcının yaptığı her şeye uygulanmasını istediğinizi varsayarsanız, kullanıcı ortam değişkenlerini değiştirirsiniz. Bilgisayarım, Özellikler, Gelişmiş, Ortam değişkenleri'ne sağ tıklayın ve "Bir değişken eklemek için kullanıcı değişkenleri:

PATH = C:\whatever

Kullanıcı oturum açtığında, sistem geniş yoluna eklenir.


Zaten
PATH'taki

setx@ Berzemus'un bahsettiği gibi, sistem PATH değişkenini ( /manahtar) kalıcı olarak düzenleyebilir .
Pat,

2

Kullanıcı, "Yönetici" haklarına sahip olmasa bile, sistem genelindeki PATH değişkenini geçersiz kılacak bir komut isteminde bir PATH değişkeni ayarlayabilir. Değişiklik, kullanıcının bu komut isteminden başlattığı yeni işlemler için geçerli olacaktır. (Var olan Explorer işlemi ve kullanıcının değişiklik yapıldığında yürüttüğü diğer işlemler, değişikliği "göremez").


1

Yukarıdaki cevaplara ek olarak, kayıt defterini de güncelleyebilirsiniz (komut dosyası olma avantajına sahiptir):

PATH değişkeni HKEY_CURRENT_USER \ Environment içerisinde saklanır.

Mevcut yolu okumak için:

reg query HKEY_CURRENT_USER\Environment /v PATH

Yola c: \ somedir değerini eklemek için:

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

İşlemler başlatıldığında çevreyi okuduğunu unutmayın, bu nedenle yeni yolu almak için işlemi yeniden başlatmanız gerekir.

Güncelleme: Bulduğum başka bir yol da çalıştırmak:

rundll32 sysdm.cpl,EditEnvironmentVariables

Yine, bu uygulama kayıt defterini düzenler ve yukarıdakilerle aynı etkiye sahiptir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.