我有一个小的实用程序脚本clear.bat,它在我的源上做一些内务处理工作.
它是一个.bat文件,因此我可以在Windows资源管理器中轻松双击它.
有时,我发现从我的Git bash执行它更方便(msysgit,如果这很重要).
为此,我打字
cmd
clear.bat
exit
Run Code Online (Sandbox Code Playgroud)
cmd把我的Git bash变成一个普通的cmd窗口,我可以轻松地执行我的批处理.当我输入时exit,cmd环境终止,我回到我的Git bash中.
这可以通过更简单的方式实现吗?
cmd /C clean.bat自从文档说出来以后我就试过了
Syntax
CMD [charset] [options]
CMD [charset] [options] [/c Command]
CMD [charset] [options] [/k Command]
Options
/C Run Command and then terminate
/K Run Command and then return to the CMD prompt.
This is useful for testing, to examine variables
Run Code Online (Sandbox Code Playgroud)
编辑:
刚注意到帖子坏了.
我想是执行clean.bat从GIT中的bash内,而无需键入三个命令上述(cmd,clear.bat,exit).我只想 …
是否有Windows命令来转换文件的行结尾?
我们test.bat需要运行以启动我们的服务器.我们使用Perforce,我们需要在工作区中使用unix行结尾.出于某种原因,我们不允许在工作区中将行结尾更改为Windows.但是,服务器在Windows上运行.
每次我必须运行bat文件时,我在Notepad ++中打开它并选择编辑→EOL转换→Windows.有没有办法实现自动化,这样我们每次与Perforce同步时都不需要手动更改行结尾?
提前致谢.
我有一组用于执行脚本安装的脚本.您可以在任何服务器2008计算机上使用这些脚本.但是,我需要使用dos批处理文件检查是否已安装.NET 3.5(在脚本运行之前).那可能吗?
我知道我可以检查文件是否C:\WINDOWS\Microsoft.NET\Framework\v3.5存在,但是让某些东西更可靠会更好.
我想检查它是否实际安装,而不仅仅是目录/文件是否存在.
谢谢
关于Windows批处理文件:有没有办法来列出某个目录下的所有文件(或所有特定类型的)及其子目录,包括相对于当前(或搜索)列表目录的路径?
例如,如果我想要当前目录和子目录中的所有.txt文件及其完整路径,我可以这样做
for /r . %%g in (*.txt) do echo %%g >> C:\temp\test.txt
Run Code Online (Sandbox Code Playgroud)
要么
dir *.txt /b /s >> C:\temp\test.txt
Run Code Online (Sandbox Code Playgroud)
我会得到类似的东西
C:\test\Doc1.txt
C:\test\subdir\Doc2.txt
C:\test\subdir\Doc3.txt
Run Code Online (Sandbox Code Playgroud)
如果我做
for /r . %%g in (*.txt) do echo %%~nxg >> C:\temp\test.txt
Run Code Online (Sandbox Code Playgroud)
我会得到类似的东西
Doc1.txt
Doc2.txt
Doc3.txt
Run Code Online (Sandbox Code Playgroud)
但我真正想要的是:
Doc1.txt
subdir\Doc2.txt
subdir\Doc3.txt
Run Code Online (Sandbox Code Playgroud)
可能吗?
如果我的帖子太混乱了:我基本上希望Linux CLI中的List文件具有相对于当前目录的路径,但仅适用于Windows.
默认安装在Windows'cmd.exe中的866字符集与光荣的Unicode相比很差且不方便.
我可以默认安装Unicode或将cmd.exe替换为另一个控制台并使其默认,以便程序使用它而不是cmd.exe吗?
据我所知,chcp 65001仅在正在运行的控制台中更改编码.我想在系统级别更改charset.
如何清除我通过MySQL命令行客户端打开的MySQL屏幕?
操作系统是Windows XP.
我正在玩cmd.exe,但在它的帮助下我没有找到任何信息,如何定义数组.
我发现,如何定义简单变量:
set a=10
echo %a%
Run Code Online (Sandbox Code Playgroud)
但是,我想创建数组,链表等...
那么,它能否在cmd.exe中使用(我的意思是:cmd.exe中是否存在任何数组关键字?)
我想实现一些算法:
等等...
所以,我也想知道,Cmd.exe是否有引用或实例,结构等?
导致其帮助不完整:/?
可以通过图灵机定义将Cmd.exe定义为完整吗?(图灵完成)
假设我知道进程ID.我想使用Windows批处理脚本通过其ID找到进程名称.我怎样才能做到这一点?
我正在寻找一种抑制"终止批处理作业?(Y/N)"邀请的机制,每当我在从批处理文件启动的程序中按CTRL-C时,我都会收到这样的邀请:
批处理文件:jsshell.bat:
@echo off
java -jar build-scripts\contrib\rhino1.7R1.jar
Run Code Online (Sandbox Code Playgroud)
然后通过以下方式在cmd shell上启动它:
> jsshell.bat
Run Code Online (Sandbox Code Playgroud)
这给了我一个可以被CTRL-C退出的shell,它在退出后给了我一个讨厌的消息
我该如何修改:
for /f %%a IN ('dir /b /s build\release\*.dll') do echo "%%a"
Run Code Online (Sandbox Code Playgroud)
当路径包含空格时工作?
例如,如果从中运行
c:\my folder with spaces
Run Code Online (Sandbox Code Playgroud)
它会回应:
c:\my
Run Code Online (Sandbox Code Playgroud)
谢谢