Aracılığıyla paylaş


about_Transactions

Kısa açıklama

PowerShell'de işlenen işlemlerin nasıl yönetileceğini açıklar.

Uzun açıklama

İşlemler PowerShell 2.0 sürümünden itibaren PowerShell'de desteklenir. Bu özellik bir işlem başlatmanızı, hangi komutların işlemin parçası olduğunu belirtmenizi ve bir işlemi işlemenizi veya geri almanızı sağlar.

İşlemLER HAKKINDA

PowerShell'de işlem, mantıksal birim olarak yönetilen bir veya daha fazla komut kümesidir. İşlem tamamlanabilir ("kabul edilen"), işlemden etkilenen verileri değiştirir. Ya da etkilenen verilerin işlem tarafından değiştirilmemesi için bir işlem tamamen geri alınabilir ("geri alınmıştır").

Bir işlemdeki komutlar birim olarak yönetildiğinden, tüm komutlar işlenir veya tüm komutlar geri alınır.

İşlemler, veri işlemede, özellikle veritabanı işlemlerinde ve finansal işlemlerde yaygın olarak kullanılır. İşlemler genellikle bir komut kümesi için en kötü durum senaryosunun tümünün başarısız olması değil, bazı komutların başarısız olmasına rağmen bazı komutların başarılı olması ve sistemin onarılmaması zor olan zarar görmüş, yanlış veya paylaşılamayan bir durumda bırakılması durumunda kullanılır.

İŞLEM CMDLET'LERI

PowerShell, işlemleri yönetmek için tasarlanmış çeşitli cmdlet'ler içerir.

  • Start-Transaction: Yeni bir işlem başlatır.
  • Use-Transaction: işleme bir komut veya ifade ekler. Komutun işlem özellikli nesneleri kullanması gerekir.
  • İşlemi Geri Al: İşlem tarafından hiçbir verinin değiştirilmemesi için işlemi geri alır.
  • Complete-Transaction: İşlemi işler. İşlemden etkilenen veriler değiştirilir.
  • Get-Transaction: Etkin işlem hakkında bilgi alır.

İşlem cmdlet'lerinin listesi için şunu yazın:

get-command *transaction

Cmdlet'ler hakkında ayrıntılı bilgi için şunu yazın:

get-help use-transaction -detailed

İŞLEM ETKIN ÖĞELER

Bir işleme katılmak için hem cmdlet'in hem de sağlayıcının işlemleri desteklemesi gerekir. Bu özellik, işlemden etkilenen nesnelerde yerleşik olarak bulunur.

PowerShell Kayıt Defteri sağlayıcısı Windows Vista'daki işlemleri destekler. TransactedString nesnesi (Microsoft.PowerShell.Commands.Management.TransactedString), PowerShell çalıştıran tüm işletim sistemleriyle çalışır.

Diğer PowerShell sağlayıcıları işlemleri destekleyebilir. Oturumunuzda işlemleri destekleyen PowerShell sağlayıcılarını bulmak için, sağlayıcıların Capabilities özelliğinde "İşlemler" değerini bulmak için aşağıdaki komutu kullanın:

get-psprovider | where {$_.Capabilities -like "*transactions*"}

Sağlayıcı hakkında daha fazla bilgi için sağlayıcı yardımı'na bakın. Sağlayıcı Yardımı'na ulaşmak için şunu yazın:

get-help <provider-name>

Örneğin, Kayıt Defteri sağlayıcısı için Yardım almak için şunu yazın:

get-help registry

USETRANSACTION PARAMETRESI

İşlemleri destekleyebilecek cmdlet'lerin UseTransaction parametresi vardır. Bu parametre, etkin işlemdeki komutunu içerir. Tam parametre adını veya "usetx" diğer adını kullanabilirsiniz.

parametresi yalnızca oturum etkin bir işlem içerdiğinde kullanılabilir. Etkin işlem olmadığında UseTransaction parametresiyle bir komut girerseniz, komut başarısız olur.

UseTransaction parametresine sahip cmdlet'leri bulmak için şunu yazın:

get-help * -parameter UseTransaction

PowerShell core'da, PowerShell sağlayıcılarıyla çalışacak şekilde tasarlanmış tüm cmdlet'ler işlemleri destekler. Sonuç olarak, işlemleri yönetmek için sağlayıcı cmdlet'lerini kullanabilirsiniz.

PowerShell sağlayıcıları hakkında daha fazla bilgi için bkz . about_Providers.

TRANSACTION NESNESI

İşlemler PowerShell'de System.Management.Automation.Transaction adlı bir işlem nesnesi tarafından temsil edilir.

Nesnesi aşağıdaki özelliklere sahiptir:

  • RollbackPreference: Geçerli işlem için ayarlanan geri alma tercihini içerir. İşlemi başlatmak için Start-Transaction kullanırken geri alma tercihini ayarlayabilirsiniz.

    Geri alma tercihi, işlemin otomatik olarak geri alındığı koşulları belirler. Geçerli değerler Error, TerminatingError ve Never değerleridir. Varsayılan değer Hata'dır.

  • Durum: İşlemin geçerli durumunu içerir. Geçerli değerler Etkin, Kaydedilmiş ve RolledBack'tir.

  • SubscriberCount: İşlemin abone sayısını içerir. Başka bir işlem devam ederken bir işlem başlattığınızda abone bir işleme eklenir. Bir abone işlemi işlediğinde abone sayısı azalmış.

ETKİn İşlemLER

PowerShell'de aynı anda yalnızca bir işlem etkindir ve yalnızca etkin işlemi yönetebilirsiniz. Aynı oturumda aynı anda birden çok işlem devam ediyor olabilir, ancak yalnızca en son başlatılan işlem etkindir.

Sonuç olarak, işlem cmdlet'lerini kullanırken belirli bir işlem belirtemezsiniz. Komutlar her zaman etkin işleme uygulanır.

Bu en çok Get-Transaction cmdlet'inin davranışında belirgindir. Get-Transaction komutu girdiğinizde, Get-Transaction her zaman yalnızca bir işlem nesnesi alır. Bu nesne, etkin işlemi temsil eden nesnedir.

Farklı bir işlemi yönetmek için önce etkin işlemi işleyerek veya geri döndürerek tamamlamanız gerekir. Bunu yaptığınızda, önceki işlem otomatik olarak etkin hale gelir. İşlemler, başlatıldıkları sıranın tersine etkin hale gelir, böylece en son başlatılan işlem her zaman etkin olur.

ABONELER VE BAĞıMSıZ IŞLEMLER

Başka bir işlem devam ederken bir işlem başlatırsanız PowerShell varsayılan olarak yeni bir işlem başlatmaz. Bunun yerine geçerli işleme bir "abone" ekler.

Bir işlemin birden çok abonesi olduğunda, herhangi bir noktadaki tek bir Undo-Transaction komutu tüm aboneler için işlemin tamamını geri alır. Ancak, işlemi işlemek için her abone için bir Complete-Transaction komutu girmeniz gerekir.

Bir işlemin abone sayısını bulmak için işlem nesnesinin SubscriberCount özelliğini denetleyin. Örneğin, aşağıdaki komut etkin işlemin SubscriberCount özelliğinin değerini almak için Get-Transaction cmdlet'ini kullanır:

(Get-Transaction).SubscriberCount

Başka bir işlem devam ederken başlatılan işlemlerin çoğu özgün işlemle ilişkili olduğundan abone ekleme varsayılan davranıştır. Tipik modelde, bir işlem içeren bir betik, kendi işlemini içeren bir yardımcı betiği çağırır. İşlemler ilişkili olduğundan geri alınmalıdır veya birim olarak işlenmelidir.

Ancak, Start-Transaction cmdlet'inin Independent parametresini kullanarak geçerli işlemden bağımsız bir işlem başlatabilirsiniz.

Bağımsız bir işlem başlattığınızda Start-Transaction yeni bir işlem nesnesi oluşturur ve yeni işlem etkin işlem olur. Bağımsız işlem, özgün işlemi etkilemeden işlenebilir veya geri alınabilir.

Bağımsız işlem tamamlandığında (kabul edilen veya geri alınan), özgün işlem yeniden etkin işlem olur.

VERILERI DEĞIŞTIRME

Verileri değiştirmek için işlemleri kullandığınızda, işlemden etkilenen veriler siz işlemi gerçekleştirene kadar değiştirilmez. Ancak, aynı veriler işlemin parçası olmayan komutlar tarafından değiştirilebilir.

Paylaşılan verileri yönetmek için işlemleri kullanırken bunu göz önünde bulundurun. Veritabanlarında genellikle siz üzerinde çalışırken verileri kilitleyerek diğer kullanıcıların ve diğer komutların, betiklerin ve işlevlerin değiştirmesini engelleyen mekanizmalar bulunur.

Ancak kilit, veritabanının bir özelliğidir. İşlemlerle ilgili değildir. İşlem etkin bir dosya sisteminde veya başka bir veri deposunda çalışıyorsanız, işlem devam ederken veriler değiştirilebilir.

Örnekler

Bu bölümdeki örneklerde PowerShell Kayıt Defteri sağlayıcısı kullanılır ve bu sağlayıcıyı bildiğiniz varsayılır. Kayıt defteri sağlayıcısı hakkında bilgi için "get-help registry" yazın.

ÖRNEK 1: İŞLEM GERÇEKLEŞTIRME

İşlem oluşturmak için Start-Transaction cmdlet'ini kullanın. Aşağıdaki komut, varsayılan ayarlarla bir işlem başlatır.

start-transaction

İşleme komut eklemek için cmdlet'in UseTransaction parametresini kullanın. Varsayılan olarak komutlar işleme dahil değildir,

Örneğin, HKCU: sürücüsünün Yazılım anahtarındaki geçerli konumu ayarlayan aşağıdaki komut işleme dahil değildir.

cd hkcu:\Software

MyCompany anahtarını oluşturan aşağıdaki komut, komutu etkin işleme eklemek için New-Item cmdlet'in UseTransaction parametresini kullanır.

new-item MyCompany -UseTransaction

komutu yeni anahtarı temsil eden bir nesne döndürür, ancak komut işlemin bir parçası olduğundan kayıt defteri henüz değiştirilmez.

Hive: HKEY_CURRENT_USER\Software

SKC  VC Name                           Property
---  -- ----                           --------
  0   0 MyCompany                      {}

İşlemi işlemek için Complete-Transaction cmdlet'ini kullanın. Etkin işlemi her zaman etkilediğinden, işlemi belirtemezsiniz.

complete-transaction

Sonuç olarak MyCompany anahtarı kayıt defterine eklenir.

dir m*
Hive: HKEY_CURRENT_USER\software

SKC  VC Name                           Property
---  -- ----                           --------
 83   1 Microsoft                      {(default)}
  0   0 MyCompany                      {}

ÖRNEK 2: BIR IŞLEMI GERI DÖNDÜRME

İşlem oluşturmak için Start-Transaction cmdlet'ini kullanın. Aşağıdaki komut, varsayılan ayarlarla bir işlem başlatır.

start-transaction

MyOtherCompany anahtarını oluşturan aşağıdaki komut, komutu etkin işleme eklemek için New-Item cmdlet'in UseTransaction parametresini kullanır.

new-item MyOtherCompany -UseTransaction

komutu yeni anahtarı temsil eden bir nesne döndürür, ancak komut işlemin bir parçası olduğundan kayıt defteri henüz değiştirilmez.

Hive: HKEY_CURRENT_USER\Software

SKC  VC Name                           Property
---  -- ----                           --------
  0   0 MyOtherCompany                 {}

İşlemi geri almak için İşlemi Geri Al cmdlet'ini kullanın. Etkin işlemi her zaman etkilediğinden, işlemi belirtmezsiniz.

Undo-transaction

Sonuç, MyOtherCompany anahtarının kayıt defterine eklenmemesidir.

dir m*
Hive: HKEY_CURRENT_USER\software

SKC  VC Name                           Property
---  -- ----                           --------
 83   1 Microsoft                      {(default)}
  0   0 MyCompany                      {}

ÖRNEK 3: İŞLEMIN ÖNIZLEMESINI GÖRÜNTÜLEME

Genellikle, bir işlemde kullanılan komutlar verileri değiştirir. Ancak, veri alan komutlar da işlem içinde veri aldıkları için işlemde yararlıdır. Bu, işlemin işlenmesinin neden olabileceği değişikliklerin önizlemesini sağlar.

Aşağıdaki örnekte, bir işlemdeki değişikliklerin önizlemesini görüntülemek için Get-ChildItem komutunun (diğer ad "dir") nasıl kullanılacağı gösterilmektedir.

Aşağıdaki komut bir işlem başlatır.

start-transaction

Aşağıdaki komut, MyKey kayıt defteri girdisini MyCompany anahtarına eklemek için New-ItemProperty cmdlet'ini kullanır. komutu, komutu işleme eklemek için UseTransaction parametresini kullanır.

new-itemproperty -path MyCompany -Name MyKey -value 123 -UseTransaction

Komut, yeni kayıt defteri girdisini temsil eden bir nesne döndürür, ancak kayıt defteri girdisi değiştirilmez.

MyKey
-----
123

Kayıt defterinde bulunan öğeleri almak için, UseTransaction parametresi olmadan get-childitem komutunu ("dir") kullanın. Aşağıdaki komut "M" ile başlayan öğeleri alır.

dir m*

Sonuç, MyCompany anahtarına henüz hiçbir girdi eklenmediğini gösterir.

Hive: HKEY_CURRENT_USER\Software

SKC  VC Name                           Property
---  -- ----                           --------
 83   1 Microsoft                      {(default)}
  0   0 MyCompany                      {}

İşlemin işlenmesinin etkisini önizlemek için UseTransaction parametresiyle bir Get-ChildItem ("dir") komutu girin. Bu komut, işlemin içindeki verilerin bir görünümüne sahiptir.

dir m* -useTransaction

Sonuç, işlem işlenirse MyKey girişinin MyCompany anahtarına ekleneceğini gösterir.

Hive: HKEY_CURRENT_USER\Software

SKC  VC Name                           Property
---  -- ----                           --------
 83   1 Microsoft                      {(default)}
  0   1 MyCompany                      {MyKey}

ÖRNEK 4: İŞLENEN VE IŞLENMEYEN KOMUTLARı BIRLEŞTIRME

İşlem sırasında işlem dışı komutlar girebilirsiniz. İşlem yapılmayan komutlar verileri hemen etkiler, ancak işlemi etkilemez. Aşağıdaki komut HKCU:\Software kayıt defteri anahtarında bir işlem başlatır.

start-transaction

Sonraki üç komut, kayıt defterine anahtar eklemek için New-Item cmdlet'ini kullanır. İlk ve üçüncü komutlar, komutları işleme dahil etmek için UseTransaction parametresini kullanır. İkinci komut parametresini atlar. İkinci komut işleme dahil edilmediğinden hemen geçerli olur.

new-item MyCompany1 -UseTransaction
new-item MyCompany2
new-item MyCompany3 -UseTransaction

Kayıt defterinin geçerli durumunu görüntülemek için, UseTransaction parametresi olmadan Get-ChildItem ("dir") komutunu kullanın. Bu komut "M" ile başlayan öğeleri alır.

dir m*

Sonuç, MyCompany2 anahtarının kayıt defterine eklendiğini ancak işlemin parçası olan MyCompany1 ve MyCompany3 anahtarlarının eklenmediğini gösterir.

Hive: HKEY_CURRENT_USER\Software

SKC  VC Name                           Property
---  -- ----                           --------
 83   1 Microsoft                      {(default)}
  0    0 MyCompany2                     {}

Aşağıdaki komut işlemi işler.

complete-transaction

Şimdi, işlemin bir parçası olarak eklenen anahtarlar kayıt defterinde görünür.

dir m*
Hive: HKEY_CURRENT_USER\Software

SKC  VC Name                           Property
---  -- ----                           --------
83   1 Microsoft                      {(default)}
0    0 MyCompany1                     {}
0    0 MyCompany2                     {}
0    0 MyCompany3                     {}

ÖRNEK 5: OTOMATIK GERI ALMA KULLANMA

bir işlemdeki bir komut herhangi bir hata oluşturduğunda, işlem otomatik olarak geri alınır.

Bu varsayılan davranış, işlemleri çalıştıran betikler için tasarlanmıştır. Betikler genellikle iyi test edilir ve hata işleme mantığını içerir, bu nedenle hatalar beklenmez ve işlemi sonlandırmalıdır.

İlk komut HKCU:\Software kayıt defteri anahtarında bir işlem başlatır.

start-transaction

Aşağıdaki komut, MyCompany anahtarını kayıt defterine eklemek için New-Item cmdlet'ini kullanır. Komut, komutu işleme eklemek için UseTransaction parametresini ("usetx" olarak adlandırılır) kullanır.

New-Item MyCompany -UseTX

MyCompany anahtarı kayıt defterinde zaten var olduğundan, komut başarısız olur ve işlem geri alınır.

New-Item : A key at this path already exists
At line:1 char:9
+ new-item <<<<  MyCompany -usetx

Get-Transaction komutu, işlemin geri alındığını ve SubscriberCount değerinin 0 olduğunu onaylar.

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                0                 RolledBack

ÖRNEK 6: GERI ALMA TERCIHINI DEĞIŞTIRME

İşlemin daha fazla hataya dayanıklı olmasını istiyorsanız, tercihi değiştirmek için Start-Transaction öğesinin RollbackPreference parametresini kullanabilirsiniz.

Aşağıdaki komut, "Asla" geri alma tercihiyle bir işlem başlatır.

start-transaction -rollbackpreference Never

Bu durumda, komut başarısız olduğunda işlem otomatik olarak geri alınmaz.

New-Item MyCompany -UseTX
New-Item : A key at this path already exists
At line:1 char:9
+ new-item <<<<  MyCompany -usetx

İşlem hala etkin olduğundan, komutu işlemin bir parçası olarak yeniden gönderebilirsiniz.

New-Item MyOtherCompany -UseTX

ÖRNEK 7: USE-TRANSACTION CMDLET'INI KULLANMA

Use-Transaction cmdlet'i, işlem özellikli Microsoft .NET Framework nesnelerine karşı doğrudan betik oluşturmanızı sağlar. Use-Transaction yalnızca Microsoft.PowerShell.Commands.Management.TransactedString sınıfının örnekleri gibi işlem özellikli .NET Framework nesnelerini kullanan komutlar ve ifadeler içerebilen bir betik bloğu alır.

Aşağıdaki komut bir işlem başlatır.

start-transaction

Aşağıdaki New-Object komutu TransactedString sınıfının bir örneğini oluşturur ve $t değişkenine kaydeder.

$t = New-Object Microsoft.PowerShell.Commands.Management.TransactedString

Aşağıdaki komut, dizeye metin eklemek için TransactedString nesnesinin Append yöntemini kullanır. Komut işlemin bir parçası olmadığından, değişiklik hemen uygulanır.

$t.append("Windows")

Aşağıdaki komut metin eklemek için aynı Append yöntemini kullanır, ancak metni işlemin bir parçası olarak ekler. Komut küme ayraçları içine alınır ve Use-Transaction betiğinin ScriptBlock parametresinin değeri olarak ayarlanır. UseTransaction parametresi (UseTx) gereklidir.

use-transaction {$t.append(" PowerShell")} -usetx

İşlenen dizenin geçerli içeriğini $t görmek için TransactedString nesnesinin ToString yöntemini kullanın.

$t.tostring()

Çıkışta yalnızca işlemsiz değişikliklerin etkili olduğu gösterilir.

Windows

İşlemin içinden $t işlem yapılan dizenin geçerli içeriğini görmek için, ifadeyi Use-Transaction komutuna ekleyin.

use-transaction {$s.tostring()} -usetx

Çıkışta işlem görünümü gösterilir.

PowerShell

Aşağıdaki komut işlemi işler.

complete-transaction

Son dizeyi görmek için:

$t.tostring()
PowerShell

ÖRNEK 8: ÇOK ABONELI IŞLEMLERI YÖNETME

Başka bir işlem devam ederken bir işlem başlattığınızda PowerShell varsayılan olarak ikinci bir işlem oluşturmaz. Bunun yerine geçerli işleme abone ekler.

Bu örnekte, çok aboneli bir işlemin nasıl görüntülenip yönetileceğini gösterilmektedir.

HKCU:\Software anahtarında bir işlem başlatarak başlayın.

start-transaction

Aşağıdaki komut, etkin işlemi almak için Get-Transaction komutunu kullanır.

get-transaction

Sonuç, etkin işlemi temsil eden nesneyi gösterir.

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                1                 Active

Aşağıdaki komut MyCompany anahtarını kayıt defterine ekler. komutu, komutu işleme eklemek için UseTransaction parametresini kullanır.

new-item MyCompany -UseTransaction

Aşağıdaki komut, işlem başlatmak için Start-Transaction komutunu kullanır. Bu komut komut istemine yazılmış olsa da, işlem içeren bir betik çalıştırdığınızda bu senaryonun gerçekleşme olasılığı daha yüksektir.

start-transaction

Get-Transaction komutu, işlem nesnesinde abone sayısının artırıldığını gösterir. Değer şimdi 2'dir.

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                2                 Active

Sonraki komut, MyKey kayıt defteri girdisini MyCompany anahtarına eklemek için New-ItemProperty cmdlet'ini kullanır. Komutunu işleme eklemek için UseTransaction parametresini kullanır.

new-itemproperty -path MyCompany -name MyKey -UseTransaction

MyCompany anahtarı kayıt defterinde yok, ancak iki komut aynı işlemin parçası olduğundan bu komut başarılı olur.

Aşağıdaki komut işlemi işler. İşlem geri alınırsa, işlem tüm aboneler için geri alınır.

complete-transaction

Get-Transaction komutu, işlem nesnesinde abone sayısının 1 olduğunu, ancak Status değerinin hala Etkin (İşlenmedi) olduğunu gösterir.

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                1                 Active

İşlemin işlenmesini tamamlamak için ikinci bir Complete- Transaction komutu girin. Çok aboneli bir işlem işlemek için, her Start-Transaction komutu için bir Complete-Transaction komutu girmeniz gerekir.

complete-transaction

Başka bir Get-Transaction komutu, işlemin işlendiğini gösterir.

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                0                 Committed

ÖRNEK 9: BAĞıMSıZ IŞLEMLERI YÖNETME

Başka bir işlem devam ederken bir işlem başlattığınızda, yeni işlemi özgün işlemden bağımsız hale getirmek için Start-Transaction bağımsız parametresini kullanabilirsiniz.

Bunu yaptığınızda, Start-Transaction yeni bir işlem nesnesi oluşturur ve yeni işlemi etkin işlem yapar.

HKCU:\Software anahtarında bir işlem başlatarak başlayın.

start-transaction

Aşağıdaki komut, etkin işlemi almak için Get-Transaction komutunu kullanır.

get-transaction

Sonuç, etkin işlemi temsil eden nesneyi gösterir.

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                1                 Active

Aşağıdaki komut, myCompany kayıt defteri anahtarını işlemin bir parçası olarak ekler. Komutu etkin işleme eklemek için UseTransaction parametresini (UseTx) kullanır.

new-item MyCompany -use

Aşağıdaki komut yeni bir işlem başlatır. Komutu, bu işlemin etkin işlemin abonesi olmadığını belirtmek için Independent parametresini kullanır.

start-transaction -independent

Bağımsız bir işlem oluşturduğunuzda, yeni (en son oluşturulan) işlem etkin işlem olur. Etkin işlemi almak için Get-Transaction komutunu kullanabilirsiniz.

get-transaction

İşlemin SubscriberCount değeri 1'dir ve başka abone olmadığını ve işlemin yeni olduğunu belirtir.

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                1                 Active

Özgün işlemi yönetebilmeniz için önce yeni işlemin tamamlanması (kaydedilmiş veya geri alınması) gerekir.

Aşağıdaki komut MyOtherCompany anahtarını kayıt defterine ekler. Komutu etkin işleme eklemek için UseTransaction parametresini (UseTx) kullanır.

new-item MyOtherCompany -usetx

Şimdi işlemi geri alın. İki abonesi olan tek bir işlem varsa, işlemi geri almak tüm aboneler için işlemin tamamını geri alır.

Ancak, bu işlemler bağımsız olduğundan, en yeni işlem geri alındığında kayıt defteri değişiklikleri iptal edilir ve özgün işlem etkin işlem olur.

undo-transaction

Get-Transaction komutu, özgün işlemin oturumda hala etkin olduğunu onaylar.

get-transaction
RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                1                 Active

Aşağıdaki komut etkin işlemi işler.

complete-transaction

Get-ChildItem komutu, kayıt defterinin değiştirildiğini gösterir.

dir m*
Hive: HKEY_CURRENT_USER\Software

SKC  VC Name                           Property
---  -- ----                           --------
 83   1 Microsoft                      {(default)}
  0   0 MyCompany                      {}

Ayrıca bkz.