Windows CMD-运行程序并指定图像名称

Windows CMD-运行程序并指定图像名称,windows,batch-file,cmd,Windows,Batch File,Cmd,我想从命令行(或批处理文件)运行一个程序,但要指定任务管理器中显示的imagename。使用windows CMD是否可以这样做 这需要在批处理脚本中或作为命令行参数来完成,而不是重命名exe本身。在命令提示符下,您可以使用c:\>title MyCustomTitle,然后它们在TaskManager(Windows 8)中显示如下: 这样你就可以把它们区分开来。我不知道如何更改图标,而使用自定义图标设置快捷方式也不起作用 编辑 建议2:复制c:\windows\system32\cmd.e

我想从命令行(或批处理文件)运行一个程序,但要指定任务管理器中显示的imagename。使用windows CMD是否可以这样做


这需要在批处理脚本中或作为命令行参数来完成,而不是重命名exe本身。

在命令提示符下,您可以使用
c:\>title MyCustomTitle
,然后它们在TaskManager(Windows 8)中显示如下:

这样你就可以把它们区分开来。我不知道如何更改图标,而使用自定义图标设置快捷方式也不起作用

编辑

建议2:复制c:\windows\system32\cmd.exe并重命名它,然后运行该命令

编辑2

因为这让我觉得不可能做你想做的事情,那么使用WMI查询来显示你正在运行的进程及其进程ID,你可以在每次启动后运行它,看看新的进程ID是什么呢

e、 g.批处理文件

wmic PROCESS WHERE (Name="notepad.exe") GET ProcessId
rem up to you to keep track of previously seen processes
动力壳

$knownProcessIds= @()
$processIds = Get-WmiObject Win32_Process -filter 'Name="notepad.exe"' | select -ExpandProperty ProcessId
$newProcessId = $ProcessIds | ? {$knownProcessIds -notcontains $_}
$knownProcessIds += $newProcessId
Write-Output "New notepad instance is $newProcessId"

在命令提示符下,您可以使用
c:\>title MyCustomTitle
,然后它们会显示在TaskManager(Windows 8)中,如下所示:

这样你就可以把它们区分开来。我不知道如何更改图标,而使用自定义图标设置快捷方式也不起作用

编辑

建议2:复制c:\windows\system32\cmd.exe并重命名它,然后运行该命令

编辑2

因为这让我觉得不可能做你想做的事情,那么使用WMI查询来显示你正在运行的进程及其进程ID,你可以在每次启动后运行它,看看新的进程ID是什么呢

e、 g.批处理文件

wmic PROCESS WHERE (Name="notepad.exe") GET ProcessId
rem up to you to keep track of previously seen processes
动力壳

$knownProcessIds= @()
$processIds = Get-WmiObject Win32_Process -filter 'Name="notepad.exe"' | select -ExpandProperty ProcessId
$newProcessId = $ProcessIds | ? {$knownProcessIds -notcontains $_}
$knownProcessIds += $newProcessId
Write-Output "New notepad instance is $newProcessId"


我不这么认为。我很好奇你为什么要这样做?这是一种奇怪的情况。我正在Java中运行一个命令,我想监视这个命令的内存使用情况,如果它太高,我就杀死它。问题是我可能有多个此命令的实例在运行,所以我需要知道哪个是哪个。@Adematini,我已经用另一个建议更新了我的答案。@TessellingEckler,我试图更改任何任意命令的标题,也不重命名文件。@Adematini建议图像路径名是您运行的.exe的名称,因此,如果不重命名文件,您无法更改它。(如果有办法解决这个问题,我不会感到惊讶,但这看起来不像Windows可以做的标准事情)。我不这么认为。我很好奇你为什么要这样做?这是一种奇怪的情况。我正在Java中运行一个命令,我想监视这个命令的内存使用情况,如果它太高,我就杀死它。问题是我可能有多个此命令的实例在运行,所以我需要知道哪个是哪个。@Adematini,我已经用另一个建议更新了我的答案。@TessellingEckler,我试图更改任何任意命令的标题,也不重命名文件。@Adematini建议图像路径名是您运行的.exe的名称,因此,如果不重命名文件,您无法更改它。(如果有办法的话,我不会感到惊讶,但这看起来不像Windows可以做的标准事情)。我认为这只会改变窗口标题。图像名称仍然显示为可执行文件的名称。@a是的,但是
tasklist/v
将允许您访问窗口标题。如果您知道图像名称和窗口标题,您就知道该删除什么了。@aphoria oops,我想更改图标图片,而不是文本名称。@MCND这是真的。但是,从这个问题来看,我不清楚OP是否也在尝试执行
CMD.EXE
。我认为这对任何好的建议都不起作用;但是复制和重命名应该对许多可执行文件有效。我认为这只会更改窗口标题。图像名称仍然显示为可执行文件的名称。@a是的,但是
tasklist/v
将允许您访问窗口标题。如果您知道图像名称和窗口标题,您就知道该删除什么了。@aphoria oops,我想更改图标图片,而不是文本名称。@MCND这是真的。但是,从这个问题来看,我不清楚OP是否也在尝试执行
CMD.EXE
。我认为这对任何好的建议都不起作用;但是复制和重命名应该适用于许多可执行文件。