如何使用taskkill为批处理文件创建输入提示

时间:2018-01-24 20:55:02

标签: windows batch-file cmd taskkill

更新:

下面是我写的当前代码,但是它出错了 错误:RPC服务器不可用

如果我在cmd中手动输入taskkill /s cn /im csmmviewer.exe它可以正常工作,我在这里想念的是什么?

@echo off
:start
set /p "cn=Enter the computer name "
echo.
set /p "question=You will now close csmmviewer.exe on %cn% are you sure? [Y/N] "
echo.
if /I "%question%" EQU "Y" goto :run
if /I "%question%" EQU "N" goto :start
:run
taskkill /s cn /im csmmviewer.exe
set /p "again=Do you have another computer name? [Y/N] "
echo.
if /I "%again%" EQU "Y" goto :start
if /I "%again%" EQU "N" goto :exit

Hello Noob在这里寻找一些急需的帮助。

在我的工作中遇到这个问题,有太多人登录到应用程序,当真正需要使用它的用户不能因为太多人登录它(使用所有许可证)而且我必须通过远程杀死应用程序开始踢它们。以下命令每次都有效,但我必须手动将其复制并粘贴到命令提示符中,并将PCJXXXXX替换为实际的计算机名称。我想创建一个.bat文件或.cmd文件,我可以双击它,然后只需要输入我刚刚输入的计算机名称,它运行完整的命令来结束任务。

我的剧本:

taskkill /s pcjXXXXX /u domain_name\admin /im csmmviewer.exe    

XXXXX是我删除并输入实际名称,任何人都可以提供帮助,如果您需要更多详细信息,请告诉我您的问题?

2 个答案:

答案 0 :(得分:0)

通过简单地提示用户输入来使用set /P,将结果存储在变量中并从那里开始使用变量。

@echo off
set /P "var=Please enter your PC Name: "
taskkill /s pcj%var% /u domain_name\admin /im csmmviewer.exe

有关set的详细信息,您可以set /?

运行cmd.exe

答案 1 :(得分:0)

当您从命令行调用参数时,可以使用参数(如%1)。 @echo off if "%1" == "" ( set /p "PC=Enter PC Name: PCJ" ) else set "pc=%1" taskkill /s pcj%PC% /u domain_name\admin /im csmmviewer.exe 指的是第一个参数。

PCJ

(或者如果字符串killap 12345是固定的,则更简单 将set "pc=%1"替换为set "pc=PCJ%1"时的{{1}}

如果你没有给出参数,(比如当你通过双击启动它时),它会询问你的名字。