我想检查我的 jar 是否正在用户系统上运行,如果关闭则重新启动。
我知道该命令jps -l可以检查当前正在运行的罐子。唯一的问题是,要使该行正常工作,需要用户安装 JDK。所以我当时想知道是否有与该行等效的jps -l行,它不需要 JDK 或任何东西,而只是检查特定的 jar 是否正在运行。
过去我也使用过cmd /c tasklistWindows 线和top -F -R -o cpuMac 线。检查应用程序或 exe 是否正在运行,但这似乎并没有真正起作用。当tasklist我在 Windows 上运行该行然后检查名为“myApp”的 exe 时,它没有找到它。即使它可能正在运行。否则,这将是检查正在运行的应用程序、exe 或 jar 的完美方法。
以下是我如何尝试使用该tasklist命令检查特定可执行文件的示例代码。
try {
String procss;
Process pRun = Runtime.getRuntime().exec("cmd /c tasklist");
BufferedReader input = new BufferedReader(new InputStreamReader(pRun.getInputStream()));
while ((procss = input.readLine()) != null) {
if(!procss.contains("myApp"))
{
//Runtime command to launch exe or app.
}
}
input.close();
} catch (Exception …Run Code Online (Sandbox Code Playgroud) 如果你有这样的代码
set "CONTENT_LENGTH=24" & echo first=1&second=2&third=3
Run Code Online (Sandbox Code Playgroud)
我希望回声与&

这是当我尝试安装 gulp-sass 时看到的结果:
npm i gulp-sass --save-dev
Run Code Online (Sandbox Code Playgroud)
跑步gulp-watch和gulp browser-sync工作
TIA
我在 Windows 10 上使用 cmd。
我想将文件复制day_template.md到day2.md, day3.md, ..,dayN.md
用于使用此名称模式创建多个副本的命令是什么。我需要一些增量器来使每一天{i}.md,其中 i 是由我指定的。
检查文件是否存在也很好。例如,我手动创建了day1.md
希望问题清楚。
如何使用批处理脚本语言从STDIN读取数字并将其总和打印到Windows CMD 中的STDOUT ?
就像它在 bash 中工作一样:
read a b; expr $a + $b
Run Code Online (Sandbox Code Playgroud)
在Ubuntu上安装 Batch 语言的简单方法在哪里?这种语言是否流行,或者专业 Windows 用户是否安装 bash?
这是我在这个美丽的网站上提出的第一个问题。正如您可能在标题中读到的那样,我想重命名可变数量的文件,在cmd和批处理文件中使用一系列数字,该序列是递增的,就像这样(1,2,3,4,5, 6、7、8、9、10...)。例如:
Test.txt它应该变成1.txt
Another.txt应变为2.txt
等等,一切都是自动的。
我的想法是设置一个类似的变量set /a number=1,并通过循环向其添加+1 set number="%number%+1",并每次重命名,但这是不可能的,因为当我使用ren
命令重命名文件时,它会立即重命名。
谁能帮我提供cmd和批处理文件版本?
提前致谢
我遇到的问题与我在这里看到的很多帖子相反。
我正在运行其他人编写的 perl 命令,尽管使用了“">”命令,但输出全部被强制显示在屏幕上。
Windows 清楚地知道我的意图,因为每次执行命令时我给出的文件名都是全新创建的,但日志文件的内容/大小为空且长度为 0 字节。
我的 perl 可执行文件与我的 perl 例程/.pl 文件位于不同的位置。
我尝试以管理员身份运行,但没有。
这并不是程序有问题。我的一些同事执行得很好,屏幕上没有任何输出。
一般语法是:
F:\git\repoFolderStructure\bin>
F:\git\repoFolderStructure\bin>perl alog.pl param1 param2 commaSeparatedParam3 2020-12-17,18:32:33 2020-12-17,18:33:33 > mylogfile.log
>>>>>Lots and lots of output I wish was in a file
Also attempted in the directory with my perl.exe and gave the path to my repo folder's bin.
Run Code Online (Sandbox Code Playgroud)
Windows 是否有一些奇怪的东西可以创建/阻止 > 运算符行为?
关键是:我做得ipconfig > out.txt很好,不过……没有任何内容写入屏幕。
感谢您提供有关我可以尝试改变行为的任何提示!
我正在尝试创建一个批处理文件来播放贝尔角色的嘟嘟声。每当我尝试输入Ctrl+时G,它都会触发“转到”对话框。我尝试过记事本、Notepad++ 和 VSCode。
直接echo Ctrl+G在命令行中输入可以,但我想通过批处理文件运行它。
如果无法输入Ctrl+ ,是否有其他方法可以播放嘟嘟声?G
我正在运行一个名为 的 Windows 服务my-service。我知道的唯一输入是服务名称。
我可以使用服务名称获取进程标识符:
$id = Get-WmiObject -Class Win32_Service -Filter "name='my-service'" | Select-Object -ExpandProperty ProcessId
Run Code Online (Sandbox Code Playgroud)
要获取侦听端口列表,我可以使用netstat,但我所有的自定义服务都有PID 4,它不等于cmdlet的服务进程标识符Get-WmiObject。
目标是根据服务名称或进程标识符(而不是映像名称)使用 PowerShell 或 CMD 来获取服务正在侦听的端口。
我有一个批处理脚本,它使用curl 向网络中的网络服务器发出http-get 请求。401: Unauthorized问题是在curl中,即使我发送了用户名和密码,与仅在谷歌浏览器等浏览器中输入链接返回相比,我也得到了响应200: OK
C:\Users\myuser>curl -I "http://admin:admin1234@192.168.0.4/arg1=0&arg2=20&arg3=0"
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Digest realm="Login to 28b6e642501d12764d8430059585d39b", qop="auth", nonce="1592879309", opaque="ecd7f630cfdef2dec4aebb35f81708e84d20a755"
Connection: close
Set-Cookie:secure; HttpOnly
CONTENT-LENGTH: 0
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
curl -I -u admin:admin1234 "http://admin:admin1234@192.168.0.4/arg1=0&arg2=20&arg3=0"
curl -I -u admin:admin1234 "http://192.168.0.4/arg1=0&arg2=20&arg3=0"
Run Code Online (Sandbox Code Playgroud)
结果是一样的401: Unauthorized。我知道这不是我连接的设备的问题,因为如果我http://admin:admin1234@192.168.0.4/arg1=0&arg2=20&arg3=0在谷歌浏览器中使用,设备会按预期运行,并且还会返回200: OK
是否有不同的方式发送用户名和密码,如果用户名和密码没有出现在任何日志文件中,奖励