Çalışan hizmetlerin bir özetini görüntülemek için Systemctl komutu


12

systemctlŞu anda çalışan tüm hizmetlerin bir özetini görüntülemek için hangi seçeneği veya komutu kullanmalıyım?


@Zanna nın cevabını kabul etmelisin. çok daha geçerli bir yaklaşım olsa bile, benimki gibi sorunuzu ele.
Videonauth

Yanıtlar:


20

Bazı systemctlseçeneklerinden yararlanabilirsiniz:

-t, --type=
       The argument should be a comma-separated list of unit types such as
       service and socket.

       If one of the arguments is a unit type, when listing units, limit
       display to certain unit types. Otherwise, units of all types will
       be shown.

       As a special case, if one of the arguments is help, a list of
       allowed values will be printed and the program will exit.

   --state=
       The argument should be a comma-separated list of unit LOAD, SUB, or
       ACTIVE states. When listing units, show only those in the specified
       states. Use --state=failed to show only failed units.

       As a special case, if one of the arguments is help, a list of
       allowed values will be printed and the program will exit.

Muhtemelen siz istersiniz:

systemctl --type=service --state=active list-units

Bu, çıkanlar dahil tüm etkin hizmetleri listeler. Yalnızca şu anda çalışanların peşindeyseniz kullanabilirsiniz:

systemctl --type=service --state=running list-units

3
systemctlHerhangi alt komutlar olmadan komut varsayar list-units, yani ... systemctl --type-service --state=runningya da sadece düz systemctlhızlı kullanım için.
muru


4

Gerekenden daha uzun süre etrafa baktıktan sonra, çalışan hizmetleri belirleme konusunda biraz farklı bir yöntem buldum. Ayrıca çalışan hizmetlerin nasıl sayılacağını da gösterir. Bu şekilde, hizmet adının kendisinde çalışan veya hizmet sözcüğü ile yanlışlıkla bir şey yakalamamasını sağlar.

# Output all active services:
systemctl -t service --state=active --no-pager --no-legend

# Count of all active services:
systemctl -t service --state=active --no-pager --no-legend | grep -c -

# Output all running services:
systemctl -t service --state=active --no-pager --no-legend | egrep '^*\.service.*running'

# Count of all running services:
systemctl -t service --state=active --no-pager --no-legend | egrep '^*\.service.*running' -c -

# Output only the service and its description:
systemctl -t service --state=active --no-pager --no-legend | egrep '^*\.service.*running' | awk 'BEGIN { FS = " ";} {for (i = 2; i <= 4; i++) { $i = "" }; print}'
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.