Windows hizmetlerinizi arayın, her değişikliği önizleyin ve dünden beri neyin saptığını görün
Better Windows Services, Windows makinelerini yönetenler için yeniden kurulmuş services.msc'dir - tek bir motorun üzerinde bir pencere ve bir komut satırı. Sekiz yüz satırı kaydırmak yerine makineye bir soru sorun. Bir değişikliğin ne yapacağını hiçbir şeye basmadan önce görün. Bir de services.msc'nin hiç sahip olmadığı şey: her hizmeti bir dosyaya dondurun ve bir hafta sonra neyin değiştiğini sorun.
- Özgür ve ücretsiz, GPL-3.0
- Tek dosya ya da bir yükleyici
- Bakmak için yönetici hakları gerekmez
- İnternete asla bağlanmaz
bws satırı. Program İngilizce konuşur - pencere yanında duran bir dil dosyasını okur, yani yeniden derlemeden çeviri mümkündür.Kullanımda nasıl görünür
Lehçe kurulu bir Windows'ta gerçek bir oturum - görünen adlar Windows'tan gelir, yani onun dilindedir. Pencerenin kendisi İngilizce konuşur.
services.msc Windows 2000'den beri neredeyse hiç değişmedi
Yöneticiler haftada saatlerini onunla geçirip aynı duvarlara toslar.
- Arama yok. Tek gezinme, bir görünen adın ilk harfine atlamaktır.
- Filtreleme yok. Otomatik başlayacak şekilde ayarlanıp çalışmayanları göster diye sormanın yolu yok.
- Seferinde tek satır. On iki hizmeti yeniden başlatmak, on iki sağ tık ve on iki bekleme demektir.
- Sonsuza dek "Stopping...", Görev Yöneticisi ve işlemi tahmin etmekten başka çıkış yolu olmadan.
- Geçmiş yok. O başlangıç türünü kimin Disabled yaptığını ya da ne zaman yaptığını kimse bilmez.
- Gizli veriler. İşlem, tetikleyiciler, ayrıcalıklar, güvenlik tanımlayıcısı, yürütülebilir dosyayı kimin imzaladığı - hepsi için ezberden
sc.exeya da kayıt defteri gerekir. - Komut satırında denklik yok.
sc.exe'nin sözdizimi doksanlardan kalmadır; Windows'la gelenGet-Serviceise Windows PowerShell 5.1'de bir hizmetin hangi hesapla çalıştığını, açıklamasını bir yana, göstermez. PowerShell 7 ikisini de gösterir ve ayrıca kurulur.
Diğer araçlar her biri bir kısmını çözer
Process Hacker ve System Informer zengin bir liste gösterir ve zorla sonlandırabilir, ama denetimleri ve komut satırları yoktur. sc.exe ve PsService her şeyi yapabilir ve size hiçbir şey söylemez. PowerShell'in *-Service cmdlet'leri betiklenebilir ve yüzeyseldir.
Hiç kimse aranabilir bir listeyi, her değişiklikten önce bir önizlemeyi ve zaman içinde neyin değiştiğinin kaydını birleştirmez - ve bu kayıt, bu aracı ilk öğleden sonradan sonra da bir makinede tutmanın nedenidir.
Tam karşılaştırmaTek motor üzerinde bir pencere ve bir komut satırı
Kaydırmak yerine sorun
start:auto !status:running, açık olması gereken ve olmayan demektir. Hem arama kutusunda hem bws list --query içinde tek bir dil; alanlar siz yazarken önerilir.
Hiçbir şey olmadan önce planı gösterin
Her durdurma, başlatma, yeniden başlatma ve başlangıç türü değişikliği, beraberinde indirdiği hizmetlerle birlikte önizlenir ve çalışan şey önizlemenin ta kendisidir.
Neyin saptığını ve kimin değiştirdiğini söyleyin
bws snapshot create makineyi bir dosyaya dondurur, bws snapshot diff ise o zamandan beri neyin değiştiğini söyler; yapılandırmayı yalnızca başlayan ya da duran şeyden ayrı tutar. bws history, System günlüğünden bir başlangıç türünü kimin değiştirdiğini ve bir hizmeti kimin kurduğunu söyler. Pencere üçünü de Audit... altında yapar.
Yaygın bir sorunu tek basışta düzeltin
Tools sekmesi ve bws tool fix, yazdırmayan bir yazıcının, kaybolmuş sesin ya da takılmış bir aramanın arkasındaki hizmeti, ona bağlı olanlarla birlikte, her şeyle aynı plan üzerinden yeniden başlatır.
Durmayan bir hizmeti durdurun
Önce kibarca ister ve süreci yalnızca bu başarısız olursa sonlandırır; içinde yaşayan diğer her hizmetin adını söyler.
services.msc'nin gizlediklerini gösterin
Yürütülebilir dosyayı kimin imzaladığı ve Windows'un ona güvenip güvenmediği, tetikleyiciler, ayrıcalıklar, güvenlik tanımlayıcısı, işlem ve belleği. Sütun olarak ve üzerinde arama yapılacak şeyler olarak.
Bir şeyi okuyamadığında söyleyin
Okuyamadığı bir alan okunmadı olarak bildirilir, asla boş gösterilmez. Yönetici hakları olmadan alınan bir anlık görüntü bunu dosyanın içinde söyler.
Betiklere uyum sağlayın
Her komutta --json, her son için bir çıkış kodu ve bir karşılaştırma sapma bulduğunda 5.
Tek dosyadan, çevrimdışı çalışın
Açıp çalıştırın ya da tüm makine için kurun. Kurulacak .NET yok ve internete asla bağlanmaz. Okumak yönetici hakları gerektirmez. GPL-3.0.
Dünden beri ne değişti
Anlık görüntü, tek bir andaki tüm makinedir - her hizmet ve sürücü; başlangıç türü, hesap, başlatma yolu, dosyasının karması ve imzalayanı, bağımlılıkları, tetikleyicileri, ayrıcalıkları ve güvenlik tanımlayıcısıyla birlikte. Satır başına bir alan içeren bir JSON'dur, yani bir depoya girer ve git diff onu okur.
$ bws snapshot diff before.json --live --exit-code
Changed (2):
Spooler Print Spooler
startType: Manual -> Automatic
status: Stopped -> Running (running state, not configuration)
wlidsvc Microsoft Account Sign-in Assistant
status: Stopped -> Running (running state, not configuration)
Added 0, removed 0, changed 2. Fields differing: 1 in configuration, 2 in running state.
- Yapılandırma ve çalışma durumu ayrı bildirilir. Bir gün arayla alınan iki anlık görüntü, tesadüfen neyin çalıştığı bakımından farklıdır ve bunun neredeyse hiçbiri sapma değildir - okunacak satır, değişen başlangıç türüdür.
- Karşılaştırılamayanlar listelenir, gizlenmez. Bir anlık görüntünün hiç okumadığı bir alan not compared olarak çıkar; yani hiçbir şey değişmedi diyen bir karşılaştırma, iki tarafın da görebildiği şeyde hiçbir şeyin değişmediği anlamına gelir.
--exit-code, yapılandırma farklı olduğunda5ile biter; böylece zamanlanmış bir görev dağıtım sırasında bir anlık görüntü alabilir ve makinenin saptığı ilk gece birini uyarabilir.- İki makine, iki dosya. Test ortamında bir, üretimde bir anlık görüntü alın ve bunları herhangi bir yerde karşılaştırın.
Önizleme, çalıştırmanın kendisidir
Yazan her işlem önce bir plan kurar ve aynı plan; önizleme, bağımlı hizmetlerin zinciri, hiçbir şeye basmadan önceki ret, aynı şeyi isteyen komut satırı ve sonrasında geri dönüş yoludur.
$ bws stop Winmgmt --dry-run --dependents
Plan: stop Winmgmt (2 steps)
1. stop vmms (would break otherwise)
2. stop Winmgmt (asked for)
Warnings:
- Stopping Winmgmt also stops one other entry: vmms
- Winmgmt starts automatically, so it will be back after the next restart.
--dry-runolmadan çalıştırın, adımlar bunlardır, bu sırayla ve yanlarındaki aynı gerekçelerle. Gerçek çalıştırma için ikinci bir kod yolu yoktur.- Onunla birlikte inenler plandadır. Bozulacak hizmetler kendi başına birer adımdır; makinenin ihtiyaç duyduğu bir şeyi indirecek plan bunu uyarılarında söyler.
- Ret, düğmeden önce gelir. Bir sürücü, yöneticinin durdurmayı kabul etmediği bir hizmet, sistemin koruduğu bir işlem - plan kurulurken, gerekçesiyle birlikte reddedilir. Pencere düğmeyi griye çevirir ve yanında nedenini söyler.
- Zorla durdurma iki adımdır ve ikincisi koşulludur.
bws killhizmetten durmasını ister ve süreci yalnızca bu işe yaramazsa sonlandırır; içinde yaşayan diğer her hizmetin adını söyler.
Komut satırından
Pencereyle aynı motor; betikler, zamanlanmış görevler ve CI için. Veriler standart çıktıya, geri kalan her şey standart hataya gider; böylece bws list --json | jq çalışır ve bir uyarı asla JSON'unuzun içine düşmez.
bws list --query "start:auto !status:running" açık olması gereken ve olmayan
bws list --query "file:missing" yürütülebilir dosyası kaybolan hizmetler
bws list --query "signed:no peruser:no" imzasız, oturum başına kopyalar hariç
bws show Spooler bir öğe hakkında bilinen her şey
bws stop Winmgmt --dry-run --dependents durdurmanın nelere mal olacağı
bws kill Spooler --dry-run sürecini sonlandırmanın beraberinde neleri götüreceği
bws start-type Spooler manual --dry-run otomatikten çıkarmanın ne yapacağı
bws snapshot create before.json bir değişiklikten önce makineyi dondur
bws snapshot diff before.json --live --exit-code o zamandan beri ne değişti, yapılandırma değiştiyse 5
bws history Spooler başlangıç türünü kimin ve ne zaman değiştirdiği
bws tool fix printer --dry-run takılmış bir yazıcı için hızlı düzeltmenin ne yapacağı
Her komut, seçenek ve çıkış kodu
Açıp çalıştırın ya da kurun
Windows 10 1809 veya Windows Server 2019 ve sonrası, 64 bit. Arşivler yükleyici gerektirmez ve kayıt defterine hiçbir şey yazmaz; bakmak yönetici hakları gerektirmez. Herhangi bir şeyi değiştirmek yükseltilmiş bir oturum gerektirir ve iki yarı da sessizce başarısız olmak yerine bunu söyler - pencere Restart as admin sunar.
| Dosya | Nedir |
|---|---|
BetterWindowsServices-win-x64.zip | Pencere, tek bir bağımsız yürütülebilir dosya - kurulacak .NET yok |
bws-cli-win-x64.zip | Komut satırı, tek bir bağımsız yürütülebilir dosya; betikler ve CI için |
BetterWindowsServices-win-x64.msi | Yükleyici: makinedeki her hesap için iki program, Başlat menüsünde pencere ve PATH'te bws |
Yürütülebilir dosyalar bir Authenticode imzası taşır; böylece Windows bilinmeyen bir yayımcı konusunda uyarmak yerine yayımcıyı adıyla anar.

