本文介绍如何在PowerShell中获取当前PowerShell进程的PID,然后用它来做一些有趣的事情。
有没有试过在powershell命令行窗口中输入“$pid”?试试看。
PS C:\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进程对象。然后看看它是什么时间启动的,然后把这个进程杀掉什么的。
先来显示一下当前时间,再看看进程启动的时间。
PS C:\Users\zhanghong> get-date
2013年9月18日 9:05:07
PS C:\Users\zhanghong> (Get-Process -pid $pid).starttime
2013年9月18日 9:03:34
杀掉它,注意命令行提示符的变化。已经由powerShell环境重新回到cmd.exe的环境了。这里的kill即Stop-Process这个cmdlet。
PS C:\Users\zhanghong> kill $pid
C:\Users\zhanghong>
好了,关于PowerShell获取当前命令行窗口进程的PID,洪哥就介绍这么多,希望对大家有所帮助,谢谢!