運行進程的目錄有沒有辦法保存正在運行的進程的變量的目錄?說我要救mysqld.exe是的完整路徑C:\ Program Files文件\的MySQL \ MySQL服務器5.6 \ BIN,這個批處理腳本應該尋找一個過程目錄並保存它不\ processName.exe,它可行嗎?批處理腳本保存在windows
1
A
回答
1
您是否在尋找
set "MYSQLDIR=c:\program files\mysql\mysql server 5.6\bin"
更新:這是一個有點有點挑剔,你會需要使用PowerShell來獲取路徑,但是這似乎爲我工作:
@echo off
set "tmpname=%TMP%\fproc%RANDOM%"
powershell get-process ^| format-list path | findstr %1 > %TMPNAME%
set /p T1=<%TMPNAME%
call :get_path result "%T1:~7%"
echo %result%
goto:cleanup
:get_path
set "%~1=%~dp2"
exit /b
:cleanup
del %TMPNAME%
將其保存到一個名爲procpath.bat
文件,並通過進程名稱:
c:\srv\tmp> procpath pycharm64
C:\Program Files (x86)\JetBrains\PyCharm 2016.3.2\bin\
0
@ECHO OFF
SETLOCAL
:: set name of executable to locate.
:: This one onmy system - adjust to suit
SET "targetname=boinc.exe"
CALL :zapvars
FOR /f "tokens=1*delims==" %%a IN ('wmic process list full') DO IF "%%b" neq "" (
IF "%%a"=="CommandLine" CALL :report
SET "$%%a=%%b"
)
CALL :report
GOTO :EOF
:report
IF NOT DEFINED $processid GOTO zapvars
IF NOT DEFINED $executablepath GOTO zapvars
:: select your target executablename here
SET $executablepath|FINDSTR /i /L /e /c:"\\%targetname%" >NUL
IF ERRORLEVEL 1 GOTO zapvars
FOR %%z IN ("%$executablepath%") DO SET "pathwithslosh=%%~dpz
ECHO PATH without \executablename = "%pathwithslosh:~0,-1%"
:zapvars
FOR %%z IN (
CommandLine CSName Description ExecutablePath ExecutionState
Handle HandleCount InstallDate KernelModeTime MaximumWorkingSetSize
MinimumWorkingSetSize Name OSName OtherOperationCount
OtherTransferCount PageFaults PageFileUsage ParentProcessId
PeakPageFileUsage PeakVirtualSize PeakWorkingSetSize
Priority PrivatePageCount ProcessId QuotaNonPagedPoolUsage
QuotaPagedPoolUsage QuotaPeakNonPagedPoolUsage
QuotaPeakPagedPoolUsage ReadOperationCount ReadTransferCount
SessionId Status TerminationDate ThreadCount UserModeTime
VirtualSize WindowsVersion WorkingSetSize WriteOperationCount
WriteTransferCount
) DO SET "$%%z="
GOTO :eof
使用wmic
和解析 - 可以得到的工藝特點
相關問題
- 1. 在Windows批處理腳本
- 2. Windows批處理腳本 - 在
- 3. 在Windows批處理腳本
- 4. 在Windows批處理腳本
- 5. 什麼是「@」在Windows批處理腳本
- 6. 批處理腳本(如果存在)xcopy
- 7. Windows批處理腳本url解碼
- 8. Windows批處理腳本使用FOR
- 9. SVN&reviewboard的Windows批處理腳本
- 10. Windows批處理腳本問題
- 11. Windows批處理腳本:子串計算
- 12. Windows批處理 - 每個腳本
- 13. Windows批處理腳本提交參數
- 14. 批處理腳本
- 15. 批處理腳本
- 16. 在批處理腳本
- 17. 在批處理腳本
- 18. 如何從批處理腳本中運行批處理腳本?
- 19. 批處理腳本後停止向其他批處理腳本
- 20. 如何使用Windows批處理腳本處理回車?
- 21. 從sh或bash腳本運行/調用Windows批處理腳本
- 22. 交錯批處理腳本處理
- 23. 批處理腳本來處理文件
- 24. 集循環在我的批處理腳本打開批處理文件腳本
- 25. Perforce批處理腳本
- 26. 從批處理腳本
- 27. Serverside FTP批處理腳本
- 28. 通過批處理腳本
- 29. 使用批處理腳本
- 30. 批處理腳本編程
不,先生這不符合我的要求很多地方,我想批量自動搜索通過進程中運行給定的進程,給我的工作這個進程的目錄沒有\ processName.exe –