Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kısa açıklama
PowerShell profili oluşturmayı ve kullanmayı açıklar.
Uzun açıklama
Ortamınızı özelleştirmek ve başlattığınız her PowerShell oturumuna oturuma özgü öğeler eklemek için bir PowerShell profili oluşturabilirsiniz.
PowerShell profili, PowerShell başlatıldığında çalışan bir betiktir. Ortamınızı özelleştirmek için profili başlangıç betiği olarak kullanabilirsiniz. Komutlar, diğer adlar, işlevler, değişkenler, modüller, PowerShell sürücüleri ve daha fazlasını ekleyebilirsiniz. Ayrıca, her oturumda içeri aktarmaya veya yeniden oluşturmaya gerek kalmadan profilinize oturuma özgü diğer öğeleri de ekleyebilirsiniz.
PowerShell, kullanıcılar ve konak programları için çeşitli profilleri destekler. Ancak, sizin için profilleri oluşturmaz.
Profil türleri ve konumları
PowerShell, kapsamı kullanıcılara ve PowerShell konaklarına göre belirlenmiş birkaç profil dosyasını destekler. Bu profillerin herhangi birini veya tümünü bilgisayarınızda kullanabilirsiniz.
PowerShell konsolu aşağıdaki temel profil dosyalarını destekler. Bu dosya yolları varsayılan konumlardır.
- Tüm Kullanıcılar, Tüm Konaklar
- Windows-
$PSHOME\Profile.ps1 - Linux -
/opt/microsoft/powershell/7/profile.ps1 - macOS -
/usr/local/microsoft/powershell/7/profile.ps1
- Windows-
- Tüm Kullanıcılar, Geçerli Konak
- Windows-
$PSHOME\Microsoft.PowerShell_profile.ps1 - Linux -
/opt/microsoft/powershell/7/Microsoft.PowerShell_profile.ps1 - macOS -
/usr/local/microsoft/powershell/7/Microsoft.PowerShell_profile.ps1
- Windows-
- Geçerli Kullanıcı, Tüm Konaklar
- Windows-
$HOME\Documents\PowerShell\Profile.ps1 - Linux -
~/.config/powershell/profile.ps1 - macOS -
~/.config/powershell/profile.ps1
- Windows-
- Geçerli kullanıcı, Geçerli Ana Bilgisayar
- Windows-
$HOME\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 - Linux -
~/.config/powershell/Microsoft.PowerShell_profile.ps1 - macOS -
~/.config/powershell/Microsoft.PowerShell_profile.ps1
- Windows-
Profil betikleri listelenen sırayla yürütülür. Bu, AllUsersAllHosts profilinde yapılan değişikliklerin diğer profil betiklerinden herhangi biri tarafından geçersiz kılınabileceği anlamına gelir. CurrentUserCurrentHost profili her zaman en son çalışır. PowerShell Yardımı'nda CurrentUserCurrentHost profili, powershell profilinizin olarak en sık adlandırılan profildir.
PowerShell'i barındıran diğer programlar kendi profillerini destekleyebilir. Örneğin, Visual Studio Code (VS Code) aşağıdaki konağa özgü profilleri destekler.
- Tüm kullanıcılar, Geçerli Konak -
$PSHOME\Microsoft.VSCode_profile.ps1 - Geçerli kullanıcı, Geçerli Ana Bilgisayar -
$HOME\Documents\PowerShell\Microsoft.VSCode_profile.ps1
Profil yolları aşağıdaki değişkenleri içerir:
-
$PSHOMEdeğişkeni, PowerShell için yükleme dizinini depolar -
$HOMEdeğişkeni geçerli kullanıcının giriş dizinini depolar
Not
Windows'ta, Documents klasörünün konumu klasör yeniden yönlendirmesi veya OneDrive tarafından değiştirilebilir.
Documents klasörünü bir ağ paylaşımına yeniden yönlendirmenizi veya OneDrive'a eklemenizi önermeyiz. Klasörü yeniden yönlendirmek, modüllerin yüklenememesine ve profil betiklerinizde hata oluşturmasına neden olabilir.
Documents klasörünü OneDrive yönetiminden kaldırma hakkında bilgi için OneDrive belgelerine bakın.
$PROFILE değişkeni
$PROFILE otomatik değişkeni, geçerli oturumda kullanılabilen PowerShell profillerinin yollarını depolar.
Profil yolunu görüntülemek için $PROFILE değişkeninin değerini görüntüleyin. Bir yolu temsil etmek için komuttaki $PROFILE değişkenini de kullanabilirsiniz.
$PROFILE değişkeni "Geçerli Kullanıcı, Geçerli Ana Bilgisayar" profilinin yolunu depolar. Diğer profiller, $PROFILE değişkeninin not özelliklerine kaydedilir.
Örneğin, $PROFILE değişkeni Windows PowerShell konsolunda aşağıdaki değerlere sahiptir.
- Geçerli Kullanıcı, Geçerli Ana Bilgisayar -
$PROFILE - Geçerli Kullanıcı, Geçerli Ana Bilgisayar -
$PROFILE.CurrentUserCurrentHost - Geçerli Kullanıcı, Tüm Konaklar -
$PROFILE.CurrentUserAllHosts - Tüm Kullanıcılar, Geçerli Konak -
$PROFILE.AllUsersCurrentHost - Tüm Kullanıcılar, Tüm Konaklar -
$PROFILE.AllUsersAllHosts
$PROFILE değişkeninin değerleri her kullanıcı ve her konak uygulamasında değiştiğinden, kullandığınız her PowerShell konak uygulamasında profil değişkenlerinin değerlerini görüntülendiğinden emin olun.
$PROFILE değişkeninin geçerli değerlerini görmek için şunu yazın:
$PROFILE | Select-Object *
$PROFILE değişkenini birçok komutta kullanabilirsiniz. Örneğin, aşağıdaki komut Not Defteri'nde "Geçerli Kullanıcı, Geçerli Ana Bilgisayar" profilini açar:
notepad $PROFILE
Aşağıdaki komut, yerel bilgisayarda "Tüm Kullanıcılar, Tüm Konaklar" profilinin oluşturulup oluşturulmadığını belirler:
Test-Path -Path $PROFILE.AllUsersAllHosts
Profil oluşturma
PowerShell profili oluşturmak için aşağıdaki komut biçimini kullanın:
if (!(Test-Path -Path <profile-name>)) {
New-Item -ItemType File -Path <profile-name> -Force
}
Örneğin, geçerli PowerShell konak uygulamasında geçerli kullanıcı için bir profil oluşturmak için aşağıdaki komutu kullanın:
if (!(Test-Path -Path $PROFILE)) {
New-Item -ItemType File -Path $PROFILE -Force
}
Bu komutta, if deyimi var olan bir profilin üzerine yazmanızı engeller.
$PROFILE değişkeninin değerini oluşturmak istediğiniz profil dosyasının yoluyla değiştirin.
Not
Windows Vista'da ve Windows'un sonraki sürümlerinde "Tüm Kullanıcılar" profilleri oluşturmak için PowerShell'i Yönetici olarak çalıştır seçeneğiyle başlatın.
Profil düzenleme
Herhangi bir PowerShell profilini Not Defteri gibi bir metin düzenleyicisinde açabilirsiniz.
Geçerli PowerShell konak uygulamasındaki geçerli kullanıcının profilini Not Defteri'nde açmak için şunu yazın:
notepad $PROFILE
Diğer profilleri açmak için profil adını belirtin. Örneğin, tüm konak uygulamalarının tüm kullanıcılarının profilini açmak için şunu yazın:
notepad $PROFILE.AllUsersAllHosts
Değişiklikleri uygulamak için profil dosyasını kaydedin ve PowerShell'i yeniden başlatın.
Profil seçme
Birden çok konak uygulaması kullanıyorsanız, tüm konak uygulamalarında kullandığınız öğeleri $PROFILE.CurrentUserAllHosts profilinize yerleştirin. Konak uygulamasının arka plan rengini ayarlayan bir komut gibi konak uygulamasına özgü öğeleri, söz konusu konak uygulamasına özgü bir profile yerleştirin.
PowerShell'i birçok kullanıcı için özelleştiren bir yöneticiyseniz şu yönergeleri izleyin:
- Ortak öğeleri
$PROFILE.AllUsersAllHostsprofilinde depolama - Konak uygulamaya özgü öğeleri konak uygulamaya özgü
$PROFILE.AllUsersCurrentHostprofillerde depolama - Belirli kullanıcılar için öğeleri kullanıcıya özgü profillerde depolama
PowerShell profillerinin özel uygulamaları için ana bilgisayar uygulaması belgelerine bakmayı unutmayın.
Profil kullanma
PowerShell'de oluşturduğunuz öğelerin çoğu ve çalıştırdığınız komutların çoğu yalnızca geçerli oturumu etkiler. Oturumu sonlandırdığınızda, öğeler silinir.
Oturuma özgü komutlar ve öğeler, oturuma eklediğiniz PowerShell değişkenlerini, ortam değişkenlerini, diğer adları, işlevleri, komutları ve PowerShell modüllerini içerir.
Bu öğeleri kaydetmek ve gelecekteki tüm oturumlarda kullanılabilir hale getirmek için bir PowerShell profiline ekleyin.
Profiller için bir diğer yaygın kullanım da sık kullanılan işlevleri, diğer adları ve değişkenleri kaydetmektir. Öğeleri bir profile kaydettiğinizde, bunları yeniden oluşturmadan geçerli herhangi bir oturumda kullanabilirsiniz.
Profil başlatma
Profil dosyasını açtığınızda dosya boş olur. Ancak, bunu sık kullandığınız değişkenler, diğer adlar ve komutlarla doldurabilirsiniz.
Başlamanıza yönelik birkaç öneri aşağıdadır.
Herhangi bir cmdlet için diğer adları listeleyen bir işlev ekleme
function Get-CmdletAlias ($cmdletName) {
Get-Alias |
Where-Object -FilterScript {$_.Definition -like "$cmdletName"} |
Format-Table -Property Definition, Name -AutoSize
}
Konsolunuzu özelleştirme
function CustomizeConsole {
$hostTime = (Get-ChildItem -Path $PSHOME\pwsh.exe).CreationTime
$hostVersion="$($Host.Version.Major)`.$($Host.Version.Minor)"
$Host.UI.RawUI.WindowTitle = "PowerShell $hostVersion ($hostTime)"
Clear-Host
}
CustomizeConsole
Özelleştirilmiş PowerShell istemi ekleme
function prompt {
$Env:COMPUTERNAME + "\" + (Get-Location) + "> "
}
PowerShell istemi hakkında daha fazla bilgi için bkz. about_Prompts.
Diğer profil örnekleri için bkz. Kabuk ortamınızı özelleştirme.
NoProfile parametresi
PowerShell'i profiller olmadan başlatmak için, PowerShell'i başlatan program olan pwsh.exe parametresini kullanın.
Başlamak için, Cmd.exe veya PowerShell gibi PowerShell'i başlatabilen bir program açın. Windows'da Çalıştır iletişim kutusunu da kullanabilirsiniz.
Tür:
pwsh -NoProfile
pwsh.exeparametrelerinin tam listesi için şunu yazın:
pwsh -?
Profiller ve yürütme ilkesi
PowerShell yürütme ilkesi, kısmen profiller dahil olmak üzere betik çalıştırıp çalıştıramayacağınızı ve yapılandırma dosyalarını yükleyip yükleyemeyeceğinizi belirler. Kısıtlanmış yürütme ilkesi varsayılandır. Profiller de dahil olmak üzere tüm betiklerin çalışmasını engeller. "Kısıtlı" ilkesini kullanırsanız, profil çalışmaz ve içeriği uygulanmaz.
bir Set-ExecutionPolicy komutu yürütme ilkenizi ayarlar ve değiştirir. değer kayıt defterine kaydedildiğinden, tüm PowerShell oturumlarında geçerli olan birkaç komutlardan biridir. Konsolu açtığınızda ayarlamanız gerekmez ve profilinizde bir Set-ExecutionPolicy komutu depolamanız gerekmez.
Profiller ve uzak oturumlar
PowerShell profilleri uzak oturumlarda otomatik olarak çalıştırılamaz, bu nedenle profillerin ekli olduğu komutlar uzak oturumda mevcut değildir. Ayrıca, $PROFILE otomatik değişkeni uzak oturumlarda doldurulamaz.
Oturumda profil çalıştırmak için Invoke-Command cmdlet'ini kullanın.
Örneğin, aşağıdaki komut $soturumundaki yerel bilgisayardan "Geçerli kullanıcı, Geçerli Ana Bilgisayar" profilini çalıştırır.
Invoke-Command -Session $s -FilePath $PROFILE
Aşağıdaki komut, $soturumundaki uzak bilgisayardan "Geçerli kullanıcı, Geçerli Ana Bilgisayar" profilini çalıştırır.
$PROFILE değişkeni doldurulmadığından, komut profilin açık yolunu kullanır. Profilin kendi kapsamında değil uzak bilgisayarda geçerli kapsamda yürütülmesi için nokta kaynak işlecini kullanırız.
Invoke-Command -Session $s -ScriptBlock {
. "$HOME\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1"
}
Bu komutu çalıştırdıktan sonra profilin oturuma eklediği komutlar $siçinde kullanılabilir.
Ayrıca bakınız
PowerShell