首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在windows BAT中获取程序的完整路径?

在Windows BAT中获取程序的完整路径可以使用以下方法:

  1. 使用%~dp0变量:在BAT脚本中,%~dp0表示当前脚本所在的目录的完整路径。可以通过将%~dp0与程序的相对路径拼接来获取程序的完整路径。例如,如果程序位于当前脚本所在目录的子目录中,可以使用以下命令获取程序的完整路径:set program_path=%~dp0subdirectory\program.exe这将把程序的完整路径保存在program_path变量中。
  2. 使用where命令:where命令可以在系统的PATH环境变量中搜索指定的程序,并返回程序的完整路径。可以使用以下命令来获取程序的完整路径:for /f "delims=" %%i in ('where program.exe') do set program_path=%%i这将把程序的完整路径保存在program_path变量中。
  3. 使用wmic命令:wmic命令可以获取系统中已安装程序的信息,包括程序的完整路径。可以使用以下命令来获取程序的完整路径:for /f "skip=1 tokens=2 delims=," %%i in ('wmic product where "name='Program Name'" get InstallLocation /format:csv') do set program_path=%%i将上述命令中的"Program Name"替换为程序的名称,这将把程序的完整路径保存在program_path变量中。

请注意,以上方法中的程序名称需要根据实际情况进行替换。此外,以上方法均适用于BAT脚本中获取程序的完整路径,但不适用于其他编程语言或环境。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何在 MSBuild 的项目文件 csproj 中获取绝对路径

通常我们能够在 csproj 文件中仅仅使用相对路径就完成大多数的编译任务。但是有些外部命令的执行需要用到绝对路径,或者对此外部工具来说,相对路径具有不同的含义。...这个时候,就需要将相对路径在 csproj 中转换为绝对路径来使用。 本文介绍如何在项目文件 csproj 中将一个相对路径转换为绝对路径。...在 MSBuild 4.0 中,可以在 csproj 中编写调用 PowerShell 脚本的代码,于是获取一个路径的绝对路径就非常简单: 1 [System.IO.Path]::GetFullPath...WalterlvRelativePath))) 这样,就可以使用 $(_WalterlvAbsolutePath) 属性来获取绝对路径...你可以阅读我的其他篇博客了解到 $(OutputPath) 其实最终都会是相对路径: 项目文件中的已知属性(知道了这些,就不会随便在 csproj 中写死常量啦) - walterlv 如何更精准地设置

29130
  • 如何在控制台程序中监听 Windows 前台窗口的变化

    本文会介绍两类知识,一类是如何在 .NET/C# 程序中方便地调用 Win32 API,另一类是在控制台程序中开启 Windows 消息循环。...思路 获取当前前台窗口的本质 API 调用是 GetForegroundWindow。在拿到前台窗口的句柄后,进而获取到例如窗口标题、类名等信息。...获取窗口的各种信息 为了让 Program.cs 中的代码更简洁一些,我们创建一个 Win32Window 类,用来辅助我们获取特定窗口的各种信息。...的完整代码如下: using Windows.Win32.Foundation; using Windows.Win32.UI.Accessibility; using static Windows.Win32....NET/C# 程序如何在控制台/终端中以字符表格的形式输出数据 - walterlv 开源项目 本文的代码已经开源在 GitHub 上,感兴趣可以去项目中阅读更新的代码: https://github.com

    1.5K20

    C#.NET 如何在第一次机会异常 FirstChanceException 中获取比较完整的异常堆栈

    本文介绍如何在 FirstChangeException 事件中拿到比较完整的异常堆栈,而不只是第一帧。...第一次机会异常 .NET 程序代码中的任何一段代码,在刚刚抛出异常,还没有被任何处理的那一时刻,AppDomain 的实例会引发一个 FirstChanceException 事件,用于通知此时刚刚开始发生了一个异常...另外,你也可以用 ExceptionDispatchInfo 让内部异常的堆栈也连接起来,详见我的另一篇博客: 使用 ExceptionDispatchInfo 捕捉并重新抛出异常 - 吕毅 获取较完整的第一次机会异常堆栈...我们需要等到 FirstChanceException 事件中的异常被 catch 到,就能获取到第一次抛出的地方到 catch 处之间的所有帧。...因为我们只需要当前调用堆栈中的异常处理执行完成即可。

    39840

    Apache Kafka 在 Windows 系统上设置与运行教程

    Apache Kafka 是一款速度快、可扩展的消息队列,能有效应对高负载市场场景下的读写任务,如 IO 相关操作。...你可以从 https://zookeeper.apache.org/ 获取有关 Zookeeper 信息。 可以从下面这个视屏教程中获取如何在 Windows 系统上设置 Kafka 相关帮助。...本教程假定我们将 Zookeeper 和 Kafka 解压到 c:\drive 目录,不过你可以将它们解压到任何路径都行。...这里我们需要使用的是完整的 zookeeper 项目而不是作为包启动的 Kafka 因为这里我们使用的是单个节点的 Zookeeper 实例。...设置 JDK 启动 JRE 安装程序,并选中「Change destination folder」 复选框,然后点击安装。 ? 将安装目录修改为任何不包含空格的文件夹内。

    2.7K20

    Python 自动化指南(繁琐工作自动化)第二版:附录 B:运行程序

    从终端窗口运行程序 当您打开终端窗口(如 Windows 上的命令提示符或 MacOS 和 Linux 上的终端)时,您会看到一个几乎空白的窗口,您可以在其中输入文本命令。...在 Windows 上,它将是您当前所在文件夹的完整路径: C:\Users\Al>your commands go here 在 MacOS 上,提示符显示您的电脑名称、冒号、当前工作目录(您的个人文件夹简称为...图 B-1:Windows 上的运行对话框 这种方法的缺点是您必须输入脚本的完整路径。...这个批处理文件将使您不必在每次想要运行 Python 程序时都键入完整的绝对路径。另外,@pause会在 Python 脚本的结尾加上"Press any key to continue..."...相反,只需按下WIN+R,输入pythonScript(不需要完整的pythonScript.bat名称),然后按下ENTER来运行您的脚本。

    1.8K40

    十八.病毒攻防机理及WinRAR恶意劫持漏洞(bat病毒、自启动、蓝屏攻击)

    常见病毒如“爱虫”病毒、CIH病毒、木马病毒(Trojan)、脚本病毒、宏病毒等等 本文首先通过批处理bat文件模拟简单的病毒功能,让大家简单感受下病毒的某些功能。...2.修改密码和定时关机脚本 接下来分享一个比较完整的bat脚本制作过程,这些代码对批处理功能熟悉和脚本病毒逆向分析都有帮助。 第一步,新建game.bat文件。...注意:当目标用户解压我们文件时,其解压目录必须是 C:/users/当前用户/目录下,也就是必须是在下面这些目录中解压的该文件。压缩包中隐藏了深层次的路径,xp系统自启动路径可能不同。...www.bleepingcomputer.com 该Windows 10中的错误是通过在浏览器的地址栏中打开特定路径或使用其他Windows命令,即可使操作系统崩溃并显示蓝屏死机。...更糟糕的是,特权低的Windows用户可以尝试使用此路径连接到设备,从而使计算机上执行的任何程序都很容易让Windows 10崩溃。

    2.1K60

    红队笔记 - 提权&权限维持

    提权 Windows 通常会检查我的权限 ( whoami /all) 和文件系统(tree /f /a来自C:\Users目录)以获取快速获胜或有趣的文件(尤其是用户主文件夹和/或 Web...如果您是本地管理员,则相关,但whoami /all返回您正在“中等完整性进程”中运行。...\PsExec.exe -i -s "c:\temp\rev.bat" 如果你在 Windows 系统上有一个 shell 并且有另一个用户的密码,PsExec 也可以用来作为目标用户执行程序...如果这导致我们可以运行某些命令(无需密码或已知密码)之后,开始查看文件系统(再次 - 主目录和有趣的目录,如/var/www/html)以查找多汁文件或包含凭据或线索的文件。...为了在 Linux 中有效提权,您必须回答的一些问题与 Windows 类似,有些则完全不同。一般来说,以下是一些经常相关的问题。 是否有任何正在运行的服务或程序看起来是非默认的?他们脆弱吗?

    1.4K40

    如何在.NET程序崩溃时自动创建Dump?

    当然这是一些 hack 手段,不在本文讨论中。 不过好消息是,虽然您无法在程序崩溃退出以后创建 Dump,但是您可以在程序崩溃时自动创建 Dump,这样下次遇到程序崩溃,那么就可以有分析的现场了。...Windows 平台 在 Windows 中,可以将 Windows 错误报告 (WER) 配置为在应用程序崩溃时生成转储。...这个方式对所有程序都有效果,不仅仅是.NET 程序,如 C++、Go 等等都可以;而且和.NET、.NET Core 版本无关 打开regedit.exe 打开目录HKEY_LOCAL_MACHINE\...3: Triage 与 Mini 相同,但会删除个人用户信息,如路径和密码。 4: Full 最大的转储,包含所有内存(包括模块映像)。...总结 本文主要是介绍了如何在 dotNet 程序崩溃时自动创建 Dump,Windows 上的方法对于.NET Freamwork 和.NET Core 版本都适用。.

    1.8K30

    深入浅出Windows BATCH

    中能够写不论什么能够在CMD命令行中执行的命令,另外,非常多应用程序也提供了命令版本号,比方WinRAR,假设你须要从某个地方拷贝东西并解压,就能够用BAT: ::copyversion.bat @...另外的方式就是通过CMD在命令行中启动它,但须要给出它的路径,也就是说要让解释程序能找到它,所以推荐的做法是把所写的BAT收集整理到一个目录中,然后把这个文件放到系统的环境变量PATH中去,这样就能够在不论什么的路径中使用了...对于那些在环境变量Path中的命令,它是无法获取帮助信息的,对于那些命令,仅仅能通过命令本身去找帮助信息。 2....以及安装的第三方程序如WinRAR等。 这些程序也许支持命令模式,也许不支持,这个要去參考程序的文档,另外,即使其支持命令行,选项和參数也要參考文档。 3....这时BAT就派上大用场了,能够写一个叫做startup.bat,在里面把要执行的程序都写上,然后在Start Menu的Startup目录中建一个指向我们startup.bat的快捷方式: :: startup.bat

    81010

    Windows 批处理(bat)语法大全

    %~dp0[获取当前路径] %~dp0 “d”为Drive的缩写,即为驱动器,磁盘、“p”为Path缩写,即为路径,目录 cd %~dp0 :进入批处理所在目录 cd %~dp0bin\ :进入批处理所在目录的...4.每个编写好的批处理文件都相当于一个DOS的外部命令,把它所在的目录放到DOS搜索路径(path)中,即可在任意位置运行。...5.C:\AUTOEXEC.BAT 是每次系统启动时都会自动运行的,可以将每次启动时都要运行的命令放入该文件中。...echo off 表示在此语句后所有运行的命令都不显示命令行本身;默认是on,on时会显示如: C:\文件夹路径>命令行。...“%time%” 显示如:”11:04:23.03″ (完整的时间”hh:mm:ss.tt”) “%time:~0,5%” 显示”hh:mm”(即”11:04″),其中0表示从右向左移位操作的个数,5表示从左向右移位操作的个数

    6.8K20

    零代码编程:用kimichat打造一个最简单的window程序

    用kimichat可以非常方便的自动生成程序代码,有些小程序可能会频繁使用,如果每次都在vscode中执行就会很麻烦。...常用的Python代码,可以直接做成一个window程序,点击就可以打开使用,方便很多。 首先,把kimichat写好的Python代码脚本保存为py文件。...在Windows操作系统中,这种脚本通常以`.bat`或`.cmd`为扩展名。...请确保你的Python安装路径已经添加到了系统的环境变量中,这样你就可以直接使用`python`命令而不需要指定完整的路径。...要创建这个批处理脚本,你可以使用任何文本编辑器(如记事本)编写上述内容,并将其保存为`.bat`或`.cmd`文件,例如`run_python_script.bat`。

    12210

    灾难 | 环境变量集体抽风

    摘自百度百科: 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。...例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。...实现 我本来以为explorer和powershell的路径都是C:\WINDOWS\system32,谁知道他们两个是毒瘤(裂: ? ?...得到这个快捷方式指向的是:C:\Windows\System32\cmd.exe /k "C:\Program Files\nodejs\nodevars.bat" 所以就是跑了后面那个脚本: ?...很成功,于是乎就把C:\Program Files\nodejs加入了环境变量 但是事情没有结束,我们还没有找到npm -g install的包的路径。进入前面指向的那个bat文件: ?

    40620

    windows使用bat编写自启动带用户登录数据的浏览器

    (基于windows) 这样使用这个工具的人员可以直接在自己电脑上双击bat后再双击exe就可以直接运行程序,无需配置任何环境。 接着前文解决一下报错 报错playwright._impl....写一个bat脚本,获取chrome.exe所在的路径 可以使用以下的 BAT 脚本获取 Chrome.exe 所在的路径: @echo off setlocal rem 获取 Chrome.exe 所在的路径...首先使用 where 命令查找 Chrome.exe 所在的路径,并通过 for 循环获取该路径并赋值给变量 chromePath,然后使用 goto 语句跳出循环。...最后,使用 echo 命令输出 Chrome.exe 所在的路径。 可以将上述代码保存为 XXX.bat 文件,在命令行中执行即可。...解决bat的echo中文乱码 在BAT脚本中,如果您使用中文字符作为echo命令中的参数,则可能会出现乱码的情况。

    66520

    程序员C语言快速上手——工程篇(十三)

    在Linux上我们可以写shell脚本,在Windows上则可以编写bat脚本 本篇以如下源码作为示例工程,需要编译一个main.exe程序出来 add.c int add(int a, int b){...脚本) 由于在Windows平台,使用MinGW环境,这里编写的是bat脚本,创建一个名为build的文件(文件名任意),修改其扩展名为build.bat,使用文本编辑器编辑该文件(Linux平台上,...但是要注意,我们如果在Windows上执行以上简化版的make,则会报错,这是因为在Linux系统中,cc命令会默认的链接到gcc命令上,执行cc命令就是在执行gcc命令,而我们Windows系统中是没有...补充说明 实际上完整的Makefile 语法体系是非常复杂灵活的,学习完整Makefile语法不亚于学习一门新的编程语言,而且许多语法功能并不是常用的,另一方面,在大型的复杂工程中,自己手写Makefile...}) 递归获取文件列表aux_source_directory命令只能获取源码文件列表,且无法递归获取给定路径下的嵌套子文件夹下的各种源文件,这时可以使用file命令,结合GLOB_RECURSE参数

    3.1K30

    java 配置环境变量

    ,进入生产环境,都需要依赖java程序来运行class文件; 在windows环境当中,要想运行依赖于java命令来运行的软件,必须配置环境变量,比方说: Tomcat,eclipse,kettle,JMeter...等工具都会自动从系统的环境变量当中寻找名为:JAVA_HOME的环境变量,如果找不到,也就意味着这些软件所依赖的运行载体不存在,也就无法运行; 所以,需要配置环境变量,虽然,我们也可以在tomat的setclasspath.bat...文件中指定java的具体路径,在eclipse的eclipse.ini文件当中配置java路径,在kettle的Spoon.bat中指定java路径; 虽然说,不是不可以,但是,相对来说,较为麻烦。...另外,如果我们想要在cmd窗口当中,使用java命令,虽然不配置环境变量,也能使用,但是,毕竟不方便; 今天,重新来温习一下:如何在windows环境下配置环境变量。...2.具体实现 快捷键:win+r,输入:sysdm.cpl,确定; 高级–》环境变量; 第一步:新建系统变量 变量名称设置为:JAVA_HOME(必须是这个名称,其它依赖java运行的程序,就是根据这个名字来取值的

    1.5K10
    领券