如何在不使用其他工具的情况下监视二进制文件是否已执行?

如何在不使用其他工具的情况下监视二进制文件是否已执行?

我希望能够判断某个可执行文件是否在 ubunutu 机器上被调用。该二进制文件将由 java 进程调用。我无权安装其他软件。

这是我所做的:

  • 启动iTerm
  • 登录到盒子并开始运行watch "ps aux | grep png"(可执行文件的名称中包含字符串“png”)
  • 使用Session->Log函数记录 watch 命令的输出。

但是当我检查该文件时,它充满了如下符号:

^[[1;176H8^[[4;12H206^[[5d^H7^[[5;36H12^[[6;14H9^[[6;36H32^[[57;181H^[[1;175H30^[[4;13H10^[[5d^H^H11^[[6d^H^H13^[[6;34H1028^[[57;181H^[[1;176H2^[[4;13H59^[[5d^H^H60^[[5;36H88^[[    6;13H62^[[6;36H8^[[57;181H^[[1;176H5^[[4;13H66^[[5d^H7^[[5;36H0^[[6;14H9^[[6;28H1240   220^[[6;48HR^[[6;65H sh -c ps aux | grep -i png^[[57;181H^[[1;176H7^[[4;13H70^[[5d^H^H71^[    [5;36H24^[[6;13H73^[[6;28H2944   984^[[6;48HS^[[6;65H^[[15P^[[57;181H^[[1;176H9^[[4;14H4^[[5d^H5^[[5;34H3028^[[6;14H7^[[6;34H100^[[57;181H^[[1;175H41^[[4;14H8^[[5d^H9^[[5;34H298    0^[[6;13H81^[[6;36H8^[[57;181H^[[1;176H3^[[4;13H82^[[5d^H^H83^[[5;36H16^[[6;14H5^[[6;34H 932^[[57;181H^[[1;176H5^[[4;14H6^[[5d^H7^[[5;36H28^[[6;14H9^[[6;36H20^[[57;181H^[[1;176H    7^[[4;13H90^[[5d^H^H91^[[5;34H3032^[[6;13H93^[[6;34H1084^[[57;181H^[[1;176H9^[[4;12H339^[[5;12H340^[[5;36H5^[[6;12H342^[[6;34H 968^[[57;181H^[[1;175H51^[[4;13H45^[[5d^H6^[[5;34H    2908^[[6;14H8^[[6;36H36^[[57;181H^[[1;176H3^[[4;14H9^[[5d^H^H50^[[5;36H72^[[6;13H52^[[6;36H64^[[57;181H^[[1;176H5^[[4;13H53^[[5d^H4^[[5;36H08^[[6;14H6^[[6;34H1088^[[57;181H^[[1;    176H7^[[4;14H7^[[5d^H8^[[5;34H3032^[[6;13H60^[[6;34H 936^[[57;181H^[[1;176H9^[[4;13H63^[[5d^H^H64^[[5;34H2996^[[6;14H6^[[6;36H68^[[57;181H^[[1;173H2:01^[[4;14H7^[[4;57H2^[[5;14H    8^[[5;34H3052^[[5;57H2^[[6;13H70^[[6;28H1240   216^[[6;48HR^[[6;57H2^[[65G sh -c ps aux | grep -i png^[[57;181H^[[1;176H3^[[4;12H416^[[5;12H417^[[5;34H2924^[[6;12H419^[[6;28H294    4   928^[[6;48HS^[[6;65H^[[15P^[[57;181H^[[1;176H5^[[4;13H22^[[5d^H^H23^[[5;36H0^[[6;13H25^[[6;37H0^[[57;181H^[[1;176H7^[[4;14H6^[[5d^H7^[[5;36H96^[[6;14H9^[[6;36H4^[[57;181H^[[    1;176H9^[[4;13H30^[[5d^H^H31^[[5;36H24^[[6;13H33^[[6;36H56^[[57;181H^[[1;175H11^[[4;14H4^[[5d^H5^[[5;35H880^[[6;14H7^[[6;36H64^[[57;181H^[[1;176H3^[[4;14H8^[[5d^H9^[[5;34H300^[[    6;13H41^[[6;37H0^[[57;181H^[[1;176H5^[[4;13H42^[[5d^H^H43^[[5;34H298^[[6;14H5^[[6;36H76^[[57;181H^[[1;176H7^[[4;14H6^[[5d^H7^[[5;37H8^[[6;14H9^[[6;28H1240   21^[[6;48HR^[[6;65H     sh -c ps aux | grep -i png^[[57;181H^[[1;176H9^[[4;13H95^[[5d^H^H96^[[6d^H^H98^[[6;28H2944   984^[[6;48HS^[[6;65H^[[15P^[[57;181H^[[1;175H21^[[4;12H501^[[5;12H502^[[5;36H2^[[6;1    2H504^[[6;34H1012^[[57;181H^[[1;176H3^[[4;14H5^[[5d^H6^[[5;34H3052^[[6;14H8^[[6;36H88^[[57;181H^[[1;176H5^[[4;14H9^[[5d^H^H10^[[6d^H^H12^[[6;36H0^[[57;181H^[[1;176H7^[[4;13H13^[    [5d^H4^[[5;34H2908^[[6;14H6^[[6;34H 932^[[57;181H^[[1;176H9^[[4;13H20^[[5d^H^H21^[[5;34H3056^[[6;13H23^[[6;37H6^[[57;181H^[[1;175H31^[[4;14H4^[[5d^H5^[[5;34H2992^[[6;14H7^[[6;36    H64^[[57;181H^[[1;176H3^[[4;13H73^[[5d^H^H74^[[5;36H16^[[6;13H76^[[6;35H888^[[57;181H^[[1;176H5^[[4;14H9^[[5d^H^H80^[[5;34H3052^[[6;13H82^[[6;35H96^[[57;181H^[[1;176H7^[[4;13H83    ^[[5d^H4^[[5;34H2984^[[6;14H6^[[6;36H56^[[57;181H^[[1;176H9^[[4;14H7^[[5d^H8^[[5;34H3032^[[6;13H90^[[6;36H12^[[57;181H^[[1;175H41^[[4;13H91^[[5d^H^H92^[[5;34H2988^[[6;14H4^[[6;3

我想知道:

  • 作为非特权用户,我可以使用其他工具来实现我想要的吗?我只需要从操作系统获得二进制答案:进程是否运行?

  • 如何在这个充满十六进制字符的日志文件中搜索可执行文件名称?

答案1

这些是颜色代码。用于查看文件的工具正在将颜色代码转换为人类可以读取的形式。如果使用less,则添加选项-R

还可以考虑使用文件系统的上次读取日期。

相关内容