如何找出 Windows 10 中的系统命令

如何找出 Windows 10 中的系统命令

(1)“mklink”命令在哪里?我在 C:\Windows 中搜索了它,但没有结果。

(2) Ubuntu 中是否有像“which”命令这样的通用方法来找出文件夹可能位于 %PATH% 中的命令的绝对路径?

答案1

编辑:忽略以下内容,尽管我仍然建议安装 gow,但您只需使用窗口的 where 命令即可:

https://ss64.com/nt/where.html

which在 Windows 中有,但那是因为我安装了https://github.com/bmatzelle/gow/wiki

GOWwhich搜索 PATH 中的文件夹以尝试找到其中的脚本/可执行文件(或者至少这是我的假设,似乎是一个合理的假设)

例如:

C:\>which python
C:\Users\Almenon\AppData\Local\Programs\Python\Python36\python.EXE

甚至:

C:\>which which
C:\Program Files (x86)\Gow\bin\which.EXE

不幸的是,在路径中找不到 mklink,所以我猜这是一些内部窗口的东西,就像@Natsu-kage 说的那样

C:\>which mklink
which: no mklink in (.;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\iCLS\;C:\Program Files\Intel\Intel(R) Management Engine Components\iCLS\;C:\Program Files\Python36\Scripts\;C:\Program Files\Python36\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\ProgramData\chocolatey\bin;C:\Program Files (x86)\Gow\bin;C:\Program Files\Redis\;C:\Program Files\GTK3-Runtime Win64\bin;C:\Program Files (x86)\Yarn\bin\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\nodejs\;C:\Users\almenon\AppData\Local\Programs\Python\Python36\Scripts\;C:\Users\almenon\AppData\Local\Programs\Python\Python36\;C:\Users\almenon\AppData\Local\Microsoft\WindowsApps;C:\Users\almenon\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\almenon\AppData\Roaming\npm;C:\Users\almenon\AppData\Local\Yarn\bin;C:\Users\almenon\AppData\Roaming\Python\Python36\Scripts;C:\Users\almenon\AppData\Local\Programs\Git\cmd;C:\Users\almenon\Google Drive\Dev\dev setup)

答案2


  • where 命令的一些使用建议where.exe/
  • 查找当前驱动器中的所有文件夹/子文件夹:
%__APPDIR__%where.exe /r \ mklink.*

  • 查找当前驱动器中的所有子文件夹:文件夹:
%__APPDIR__%where.exe /r "." mklink.*

  • 仅在当前驱动器中的当前文件夹(而不是子文件夹)中查找:文件夹:
%__APPDIR__%where.exe ".:mklink.*"

  • 查找 %PATH% 变量中的所有路径:
%__APPDIR__%where.exe "%path%:mklink.*" 

  • 通过命令行将结果保存在变量中:
for /f delims^= %i in ('%__APPDIR__%where.exe "%path%:mklink.exe"')do set "_path_to_file=%~dpi" && set "_full_path=%~fi"

  • 要在命令行上将结果保存在变量中:
for /f delims^= %i in ('%__APPDIR__%where.exe "%path%:mklink.exe"')do set "_path_to_file=%~dpi" && set "_full_path=%~fi"

@echo off & for /f delims^= %%i in ('%__APPDIR__%where.exe "%path%:mklink.exe"')do set "_path_to_file=%%~dpi" && set "_full_path=%%~fi"

观察: where始终返回文件的完整路径。


%__APPDIR__%where.exe "%path%:mshta.exe"

rem ::  results ::

C:\Windows\System32\mshta.exe


相关内容