在 cygwin 中仅获取 ps 命令的 COMMAND 列
get only a COMMAND column in cygwin for ps command
在 Cygwin 中,我可以通过以下命令获取 运行 个进程的列表:
PID PPID PGID WINPID TTY UID STIME COMMAND
13160 1 13160 13160 ? 197609 13:42:18 /usr/bin/mintty
S 15404 2852 15404 16776 pty2 197609 13:59:29 /usr/bin/vi
2852 12912 2852 11244 pty2 197609 13:42:54 /usr/bin/bash
9864 1 9864 9864 ? 197609 13:11:32 /usr/bin/mintty
S 10500 2852 1692 1452 pty2 197609 14:09:42 /usr/bin/less
S 17644 2852 17644 11880 pty2 197609 14:00:15 /usr/bin/vi
12912 1 12912 12912 ? 197609 13:42:54 /usr/bin/mintty
8432 2852 8432 12020 pty2 197609 14:10:05 /usr/bin/ps
17092 13160 17092 14720 pty1 197609 13:42:18 /usr/bin/bash
但是,我只想要 COMMAND
列,而不是像这样的所有列:
COMMAND
/usr/bin/mintty
/usr/bin/vi
/usr/bin/bash
/usr/bin/mintty
/usr/bin/less
/usr/bin/vi
/usr/bin/mintty
/usr/bin/ps
/usr/bin/bash
在MAC中,我可以通过以下命令来做到这一点:
ps -o command
同一命令在 windows 中不适用于 cygwin,因为 -o
选项在 ps 中不存在。
您可以使用 awk 只打印选定的列。
$ ps |awk '{ if (NF==8) {print } else {print }}'
COMMAND
/usr/bin/ps
/usr/bin/bash
/usr/bin/mintty
在 Cygwin 中,我可以通过以下命令获取 运行 个进程的列表:
PID PPID PGID WINPID TTY UID STIME COMMAND
13160 1 13160 13160 ? 197609 13:42:18 /usr/bin/mintty
S 15404 2852 15404 16776 pty2 197609 13:59:29 /usr/bin/vi
2852 12912 2852 11244 pty2 197609 13:42:54 /usr/bin/bash
9864 1 9864 9864 ? 197609 13:11:32 /usr/bin/mintty
S 10500 2852 1692 1452 pty2 197609 14:09:42 /usr/bin/less
S 17644 2852 17644 11880 pty2 197609 14:00:15 /usr/bin/vi
12912 1 12912 12912 ? 197609 13:42:54 /usr/bin/mintty
8432 2852 8432 12020 pty2 197609 14:10:05 /usr/bin/ps
17092 13160 17092 14720 pty1 197609 13:42:18 /usr/bin/bash
但是,我只想要 COMMAND
列,而不是像这样的所有列:
COMMAND
/usr/bin/mintty
/usr/bin/vi
/usr/bin/bash
/usr/bin/mintty
/usr/bin/less
/usr/bin/vi
/usr/bin/mintty
/usr/bin/ps
/usr/bin/bash
在MAC中,我可以通过以下命令来做到这一点:
ps -o command
同一命令在 windows 中不适用于 cygwin,因为 -o
选项在 ps 中不存在。
您可以使用 awk 只打印选定的列。
$ ps |awk '{ if (NF==8) {print } else {print }}'
COMMAND
/usr/bin/ps
/usr/bin/bash
/usr/bin/mintty