如何列出所有系统蒙版单元?

ils*_*tam 7 linux systemd

是否有一种简单的方法可以列出所有系统蒙版单元?

我能想到:

ls -l /etc/systemd/system/* | grep /dev/null
Run Code Online (Sandbox Code Playgroud)

或者(仅限单位名称):

ls -l /etc/systemd/system/* | grep /dev/null | cut -d' ' -f12 | awk -F'/' '{ print $(NF) }'
Run Code Online (Sandbox Code Playgroud)

有更清晰的方法吗?

小智 10

--state选项可以完成这项工作

systemctl list-unit-files --state=masked
Run Code Online (Sandbox Code Playgroud)


lar*_*sks 6

我认为获取此信息的最佳方式可能是:

systemctl list-unit-files | grep masked
Run Code Online (Sandbox Code Playgroud)

或者,仅对于单位名称:

systemctl list-unit-files | awk '/masked/ {print $1}'
Run Code Online (Sandbox Code Playgroud)

当然,这些表达式中的任何一个实际上都匹配名称中包含"masked"的单元.更准确的是:

systemctl list-unit-files | awk '$2 == "masked" {print $1}'
Run Code Online (Sandbox Code Playgroud)