Windows的Which命令

Linux有个Which命令,用来查找可执行文件的位置。

例如:which find, 就会从PATH变量的路径里搜索该命令,返回找到的第一个匹配的结果。

这样我们就可以知道,我们用的find程序是哪里的。

Windows没有这样的指令,我们可以自己写一个:

@echo off
echo %~dp$PATH:1
@echo on

就这三行!

下面是执行结果

D:\WORK\RF>d:\Which.bat java.exe

C:\Program Files\Java\jdk1.7.0_71\bin\

D:\WORK\RF>d:\Which.bat cmd.exe

C:\WINDOWS\system32\

D:\WORK\RF>d:\Which.bat cl.exe

C:\Program Files\Microsoft Visual Studio\VC98\Bin\

这个一定要写全文件名,不带扩展名是不行的。

这里用是批处理的编辑符扩展,下面是从Windows的帮助文件里引用的:

也可以在批处理参数中使用编辑符。编辑符使用当前的驱动器和目录信息将批处理参数扩展为部分或完整的文件或目录名。要使用编辑符,请键入百分号 (%) 字符,后面是波形符号 (~) 字符,然后键入合适的编辑符(即 %~modifier)。

%~$PATH:1 搜索 PATH 环境变量中列出的目录,并将 %1 扩展到第一个找到的目录的完全合格名称。如果没有定义环境变量名称,或没有找到文件,则此编辑符扩展成空字符串。

时间: 2024-10-13 10:12:44

Windows的Which命令的相关文章

windows下git命令的使用

一.写在前面 关于git,出于自己的爱好,前段时间玩了一下,也自己上网查了一下资料,现简单记录一下,以备查看. 当然,本文并不是介绍配置git服务器的文章,而是以github服务器作为git的远程仓库服务器. 二.安装 windows下使用git,需要安装msysGit,下载地址是https://code.google.com/p/msysgit/downloads/list; 安装完成后,在安装目录下,有个msys.bat文件,这个就是msysGit提供的命令行客户端: 当然就像svn一样,也

windows下的命令行工具babun

什么是babun babun是windows上的一个第三方shell,在这个shell上面你可以使用几乎所有linux,unix上面的命令,他几乎可以取代windows的shell.用官方的题目说就是A Windows shell you will love! babun的几个特点 使用babun无需管理员权限先进的安装包管理器(类似于linux上面的apt-get或yum)预先配置了Cygwin和很多插件拥有256色的兼容控制台HTTP(S)的代理支持面向插件的体系结构可以使用它来配置你的gi

利用windows系统ftp命令编写的BAT文件上传[转]

利用windows系统ftp命令编写的BAT文件上传[转] 利用windows系统ftp命令编写的BAT文件上传[转] 在开发中往往需要将本地的程序上传到服务器,而且用惯了linux命令的人来说.在windows下就比较麻烦了.为了方便特编写一个BAT程序来帮助需要这样功能的人.如果用其他IDE工具自带的FTP功能也可以,^_^!      命令: todev.bat /index.asp  默认d:\cnweb为网站的根目录.      我的 http://www.lawcar.cn/ htt

[转]Windows中的命令行提示符里的Start命令执行路径包含空格时的问题

转自:http://www.x2009.net/articles/windows-command-line-prompt-start-path-space.html 当使用Windows 中的命令行提示符执行这段指令时(测试Start命令执行带空格的路径的程序或文件问题),第一行Start会成功执行,跳出记事本程序,而第二行,会 Start跳出一个新的命令提示符,标题上写着路径,但是不会执行任何命令,第三行Start命令行提示符会提示C:\Program文件不存在,提示无 法执行. start

Windows中用“ls”命令

解决办法是: 在C:\Windows\System32目录下新建文本文档,文件内容为: @echo off dir 另存为“ls.bat” 类型为所有文件,编码ANSI 可使用dir 或者ls都可以 经常切换于Windows与Linux之间的用户可能都面临一个问题——二者的一些命令是不同的,有时候很容易弄混了,比如Windows下列出目录中的文件与文件夹用命令“dir”,但是在Linux下却是用“ls”的. 解决这个问题在Linux下可以用“alias”建立别名来使用Windows下的命令,例如

apache在windows下的命令安装与报错解决

1.在windows下可以通过运行apache的exe文件就可以,但当我们打包的时候,就需要命令来安装apache.apache在windows下用命令下的安装为: apache.exe -k install 2.如果操作系统是win8或者是win7可能会报如下错误: <OS 5>拒绝访问. :Failed to open the WinNT service manager 主要是需要管理员权限才行.需要在打开cmd的时候用管理员身份打开,然后执行以上命令即可:也可以写一个bat文件以管理员身

Linux和Windows下ping命令详解

转:http://linux.chinaitlab.com/command/829332.html 一.Linux下的ping参数 用途 发送一个回送信号请求给网络主机. 语法 ping [ -d] [ -D ] [ -n ] [ -q ] [ -r] [ -v] [ \ -R ] [ -a addr_family ] [ -c Count ] [ -w timeout ] [ -f | -i \ Wait ] [ -l Preload ] [ -p Pattern ] [ -s PacketS

Windows XP运行命令

运行程序&运行命令辅助功效选项access.cpl添加硬件向导hdwwiz.cpl添加或者删除程序appwiz.cpl管理工具control admintools自动更新w pl.cpl Bltooth文件传送向导fsquirt计算器calc证书管理节制台certmgr.msc字符照射表charmap磁盘查抄工具chkdsk剪贴簿查看器clipbrd命令行提示符cmd组件服务dcomcnfg计算机管理compmgmt.msc日期和时间属性timedate.cpl DDE同享ddeshare装备管

windows下的命令,部分端口总结

wmimgmt  打开windows管理体系结构 msconfig 系统配置,如启动服务等 magnify 放大镜 mmc 控制台 dcomcnfg 组件服务器 secpol 本地安全策略 taskmgr 任务管理器 eventvwr 事件管理器 explorer 资源管理器 perfmon 性能监视器 regedit 注册表 regedt32 注册表 rsop 组策略管理 calc 计算器 certmgr 证书管理 osk 屏幕键盘 nslookup ip地址侦测器 iexpress 木马捆绑

[转]玩转Windows服务系列——命令行管理Windows服务

本文转自:http://www.cnblogs.com/hbccdf/p/managewindowsservicewithcmd.html 说到Windows服务的管理就不得不说通过命令行的方式管理Windows服务,因为无论是系统管理员,还是通过编程的方式调用cmd命令,命令行都是非常方便以及强大的工具. 接下来就看一下如何通过cmd命令管理Windows服务. 管理Windows服务的主要cmd命令 管理Windows服务的命令应该有很多,但是我所了解到的命令主要有两个:sc.net. 说是