PowerShell获取当前进程PID的小技巧
本文介绍如何在PowerShell中获取当前PowerShell进程的PID,然后用它来做一些有趣的事情。
有没有试过在powershell命令行窗口中输入“$pid”?试试看。
PSC:\Users\zhanghong>$pid 4404
对于PID,我们貌似不陌生。是的,它就是一个进程的进程ID。那这里的“$pid”是谁的进程ID呢?是当前powershell这个命令行窗口的powershell进程的进程ID。注意,小编在先打开一个cmd.exe,再在cmd窗口中输入powershell进入powershell环境的。所以,这里的PID,不是cmd.exe的的进程ID,而是powershell.exe的进程ID。
好了,搞清楚这个“$pid”是什么之后,我们来看看它有什么用。很明显,我们可以通过这个“$pid”来获取到当前的powershell进程对象。然后看看它是什么时间启动的,然后把这个进程杀掉什么的。
先来显示一下当前时间,再看看进程启动的时间。
PSC:\Users\zhanghong>get-date
2013年9月18日9:05:07
PSC:\Users\zhanghong>(Get-Process-pid$pid).starttime
2013年9月18日9:03:34
杀掉它,注意命令行提示符的变化。已经由powerShell环境重新回到cmd.exe的环境了。这里的kill即Stop-Process这个cmdlet。
PSC:\Users\zhanghong>kill$pid
C:\Users\zhanghong>