ฉันจะเริ่มต้นกระบวนการด้วยชื่อใด ๆ ที่ไม่ทำอะไรได้บ้าง?


14

ฉันต้องการเริ่มต้นกระบวนการที่ไม่ทำอะไรเลย แต่ยังคงทำงานอยู่ ว่าฉันเริ่มกระบวนการที่เรียกว่าsadhadxkและเมื่อฉันเรียกใช้pgrep -x "sadhadxk"ฉันจะได้รับหมายเลข PID กลับเช่นกระบวนการปกติใด ๆ ทำงาน

ดังนั้นมีวิธีใดบ้างที่จะเริ่มกระบวนการหลอกตา?

คำตอบ:


12

คุณสามารถทำได้:

perl -MPOSIX -e '$0="sadhadxk"; pause' &

มันควรจะตั้งค่าทั้งชื่อกระบวนการและ argv [0] ในระบบที่มันได้รับการสนับสนุนดังนั้นควรจะแสดงsadhadxkทั้งในpsและps -fส่งออกจึงควรได้รับการจับคู่โดยทั้งสองและpgrep -xpgrep -fx


9
> bash -c 'exec -a sadhadxk sleep 1000000' &

pgrep ไม่ทำงาน แต่

> ps | grep '[s]adhadxk'
18931  [...] sadhadxk 1000000

การแก้ไข: pgrepใช้งานได้ แต่ไม่ทำงานกับชื่อคำสั่ง (ซึ่งเป็นชื่อของไบนารีที่รันอยู่) เฉพาะกับบรรทัดคำสั่ง:

> pgrep -f sadhadxk
18931

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.