gpt4 book ai didi

bash - 为什么我的 pgrep 模式似乎有一个长度?

转载 作者:行者123 更新时间:2023-11-29 09:28:23 25 4
gpt4 key购买 nike

我一辈子都弄不明白为什么 pgrep 没有返回我进程的 PID。然后,在最后一次徒劳的尝试中,我只键入了可执行文件名称的一部分,瞧,PID 出现了。这导致了这个实验:

bash-4.1$ ./test_abcde_12345_vwxyz_67890.sh &
bash-4.1$
bash-4.1$ ps -ef | grep test_abcde_12345_vwxyz_67890
me 16695 21716 0 06:04 /root/dev/pts/2 00:00:00 /bin/bash ./test_abcde_12345_vwxyz_67890.sh
me 16945 22027 0 06:04 /root/dev/pts/3 00:00:00 grep test_abcde_12345_vwxyz_67890
bash-4.1$ pgrep test_abcde_12345_vwxyz_67890
bash-4.1$ pgrep test_abcde_12345_vwxyz_6789
bash-4.1$ pgrep test_abcde_12345_vwxyz_678
bash-4.1$ pgrep test_abcde_12345_vwxyz_67
bash-4.1$ pgrep test_abcde_12345_vwxyz_6
bash-4.1$ pgrep test_abcde_12345_vwxyz_
bash-4.1$ pgrep test_abcde_12345_vwxyz
bash-4.1$ pgrep test_abcde_12345_vwxy
bash-4.1$ pgrep test_abcde_12345_vwx
bash-4.1$ pgrep test_abcde_12345_vw
bash-4.1$ pgrep test_abcde_12345_v
bash-4.1$ pgrep test_abcde_12345_
bash-4.1$ pgrep test_abcde_12345
bash-4.1$ pgrep test_abcde_1234
16695
bash-4.1$ pgrep test_abcde_123
16695
bash-4.1$ pgrep test_abcde_12
16695
bash-4.1$ pgrep test_abcde_1
16695
bash-4.1$ pgrep test_abcde_
16695
bash-4.1$ pgrep test_abcde
16695

我在手册页中找不到这种行为的记录。这是正常的吗?为什么会这样?

最佳答案

我系统上的手册页包括这条注释:

The process name used for matching is limited to the 15 characters present in the output of /proc/pid/stat. Use the -f option to match against the complete command line, /proc/pid/cmdline.

关于bash - 为什么我的 pgrep 模式似乎有一个长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19517532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com