【问题标题】:A process command in top顶部的进程命令
【发布时间】:2010-10-10 02:37:43
【问题描述】:

当您运行几个 python 脚本时会出现问题。在命令顶部,它仅显示带有这些脚本的“python”。如何重命名进程或以其他方式标记它,以便我可以在顶部区分它们?

【问题讨论】:

    标签: linux bash process utilities top-command


    【解决方案1】:

    只需使用--full-commands 选项即可显示每个进程的完整命令行:

    top -c
    

    【讨论】:

    • 只有 GNU-top 吗?似乎无法在 OSX 上运行(假设它使用 BSD 顶层?)
    【解决方案2】:

    按“c”并显示命令行 - 这样您就可以看到它们是什么。

    【讨论】:

      【解决方案3】:

      您也可以查看 ps 命令。取决于您的系统:

      ps aux
      

      ps -fu USERNAME
      

      【讨论】:

      • 这就像你要求 ps 说“Frak you USERNAME!” :-P
      【解决方案4】:

      您是否正在寻找一种显示完整命令行的方法?然后只需按'c'

      【讨论】:

        【解决方案5】:

        这可能取决于平台和版本,但在我使用的平台(CentOS、Debian)上,top 通常将命令运行的最后一部分显示为 ID。

        因此,我猜测您正在通过执行“python scriptname”来运行脚本。

        如果您将脚本更改为可作为自身执行(chmod +x 和第一行 #!/usr/bin/python [或 python 所在的任何地方]),然后仅使用 "scriptname”而不是“python scriptname”,它们应该作为文件名显示在顶部。

        【讨论】:

        • 还要确保在脚本开头不要使用“#!/usr/bin/env python”。只需使用“#!/usr/bin/python”。
        【解决方案6】:

        您也可以尝试 ps aux 或 ps -au USESRNAME。 ps 非常好,因为您可以格式化输出,例如。 ps -u USERNAME -o pid,command 显示进程的pid和命令。然后也可以通过 grep (ps -u USERNAME -o pid,command|grep python) 过滤来查看所有正在运行的python脚本。

        【讨论】:

          【解决方案7】:

          我不确定您是否可以在 Python 中执行此操作,但在 C 程序中,实际上可以修改 argv[0] 以显示进程的“更漂亮”的名称。我认为限制是新名称的长度必须等于或短于原始名称,这样您就不会踩到内存。

          【讨论】:

            猜你喜欢
            • 2015-03-01
            • 2014-07-20
            • 1970-01-01
            • 2016-07-04
            • 2012-12-10
            • 2019-06-06
            • 1970-01-01
            • 2015-05-03
            • 2011-09-22
            相关资源
            最近更新 更多