Enes
Enes

Reputation: 43

Is there a equivalent pwdx in windows? Or some workaround?

I just want to determine the working directory of a running process. In Linux you can use pwdx, but i cant find a similar tool in windows. It would be perfect to get a commandline solution.

I tried nearly every possible command for windows. wmic gwmic taskkill.. none of them is a solution for my problem.

Upvotes: 1

Views: 625

Answers (2)

FoxDeploy
FoxDeploy

Reputation: 13537

The Get-Process command in PowerShell gives you the equivalent information (at least the path of the .exe)

>Get-Process ssms | Select -Expand Path | Split-path
 C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio

You could make this your own function, if you wanted:

Function pwdx{
    param($Process)
    Get-Process $Process | Select -Expand Path |Split-Path
 }

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

If you need to do this in the command line in Windows, you can find the process this way.

wmic process where "name like '%notepad%'" get ExecutablePath
ExecutablePath
C:\WINDOWS\system32\notepad.exe

Upvotes: 1

Riley Carney
Riley Carney

Reputation: 860

If you want to receive the same information as the Process Explorer you can use a Windows Management Instrumentation query on the process.

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
}

Upvotes: 0

Related Questions