所以我想做的是非常基本的......但我不知道如何去做。假设我有一个程序正在运行,但我想将 ps -C "ProgramXX" 的输出通过管道传输到一个文件中。
通常运行 ps -C "ProgramXX" 会产生以下效果:
PID TTY TIME CMD
123 ? 00:00:00 Program1
142 ? 00:00:00 Program1
165 ? 00:00:00 Program1
221 ? 00:00:00 Program1
Run Code Online (Sandbox Code Playgroud)
他们是否有任何“简单”的方式将第一列和第四列(忽略顶部标题行)放入文本文件中。
我想你可以运行 ps -C "Program1" >> Data.txt .....然后也许运行一个脚本来消除脂肪?这将在 Bash 中完成。也许使用 grep 或其他东西......但我真的不知道。顺便说一句,这将运行多次......所以 data.txt 将继续增长。
Ric*_*chm 12
您可以控制通过 获取输出的列ps。请注意,确切的命令行在 Linux/Unix 的各种风格之间确实有所不同,但我相信以下内容可以满足您的需求。
ps --no-headers -o pid,comm -C "ProgramXX" >> Data.txt
Run Code Online (Sandbox Code Playgroud)
手册页ps(1)将列出所有可用的选项。
ps是一把功能性的瑞士军刀。你要这个
ps -C "ProgramXX" -o pid=,comm=
Run Code Online (Sandbox Code Playgroud)
-o控制输出列,尾随=表示您不需要标题。
如果你这样写:
ps -o comm= -o pid= | grep '^ProgramXX'
Run Code Online (Sandbox Code Playgroud)
然后它应该适用于大多数ps实现。不幸的是,-C是一种GNU主义。
| 归档时间: |
|
| 查看次数: |
16193 次 |
| 最近记录: |