首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在windows中有没有对应的pwdx?或者一些解决方法?

在windows中有没有对应的pwdx?或者一些解决方法?
EN

Stack Overflow用户
提问于 2019-05-22 01:09:24
回答 2查看 296关注 0票数 1

我只想确定正在运行的进程的工作目录。在Linux中你可以使用pwdx,但我在windows中找不到类似的工具。这将是一个完美的命令行解决方案。

对于windows,我几乎尝试了所有可能的命令。wmic gwmic任务杀..它们都不能解决我的问题。

EN

回答 2

Stack Overflow用户

发布于 2019-05-22 01:24:38

PowerShell中的Get-Process命令提供了相同的信息(至少是.exe的路径)

代码语言:javascript
复制
>Get-Process ssms | Select -Expand Path | Split-path
 C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio

如果你愿意,你可以让它成为你自己的函数:

代码语言:javascript
复制
Function pwdx{
    param($Process)
    Get-Process $Process | Select -Expand Path |Split-Path
 }

 C:\Users\FoxDeploy> pwdx notepad
 C:\WINDOWS\system32

如果您需要在Windows的命令行中执行此操作,您可以通过以下方式找到该进程。

代码语言:javascript
复制
wmic process where "name like '%notepad%'" get ExecutablePath
ExecutablePath
C:\WINDOWS\system32\notepad.exe
票数 1
EN

Stack Overflow用户

发布于 2019-05-22 01:41:38

如果要接收与process Explorer相同的信息,可以在进程上使用Windows Management Instrumentation查询。

代码语言:javascript
复制
Function Query-Process-WMI
{
    param
    (
        [Parameter( Mandatory = $true )]
        [String]
        $processName
    )

    $process                = Get-Process $processName
    $processInfo            = $process     | ForEach-Object { Get-WmiObject Win32_Process -Filter "name = '$($_.MainModule.ModuleName)'" }
    $processInfoCommandLine = $processInfo | ForEach-Object { $_.CommandLine }
    return $processInfoCommandLine
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56243276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档