我需要在DOS下找到一个文件的父目录名例如假设这是目录C:\test\pack\a.txt我有一个询问我文件名的脚本C:\\>getname.batenterfilename:c:\test\pack\a.txt现在脚本应该只返回文件的父名称。pack而不是文件的整个父路径。c:\test\pack 最佳答案 获取批处理文件的父文件夹可以非常简单:@echoofffor%%ain("%~dp0\.")doset"parent=%%~nxa"echo%parent%根据问题,对于文件路径的父级:@echoofffor%%ain("c:
我有以下脚本来清理我的VisualStudio2010解决方案目录:@echooffFOR/D/R%%XIN(debug,release,bin,obj,ipch)DORD/S/Q"%%X"del/S/F*.suodel/S/F*.userdel/S/F*.ncbdel/S/F*.sbrdel/S/F*.logechoSolutionclean.除了suo文件外,它的工作原理就像一个魅力-它们是隐藏的,这个脚本不会删除它们。能不能帮我升级脚本,把suo文件也删掉?最诚挚的问候,e. 最佳答案 del/S/F/AH*.suo/AH开关
由于我看到很多人的文件被闪存驱动器病毒隐藏,我给他们一个使用attrib(或使用Linux)的Windows命令行来解决受感染文件时的问题被删除,他们的文件仍然“丢失”。删除文件和文件夹属性系统、隐藏和存档的命令(不是真正需要的):attrib-s-h-a/s/d:\*.*有谁知道如何制作脚本来提示用户输入驱动器号或文件夹?我已经看到一些软件可以执行类似的操作,但我认为这个会更好。谢谢![已解决]使用Cheeso的代码作为基础解决@ECHOOFFECHO"EnterDriveletter"set/pletter=attrib-s-h-a/s/d%letter%:*.*[改进了一点]@E
我目前在不同的服务器上有批处理脚本,可以将csv文件传输到不同位置的FTP服务器。我的脚本看起来与此类似:echouserftp_user>ftpcmd.datechopassword>>ftpcmd.datechoputc:\directory\%1-export-%date%.csv>>ftpcmd.datechoquit>>ftpcmd.datftp-n-s:ftpcmd.datftp.MyFTPSite.comdelftpcmd.dat如果我想要求安全传输,我的脚本将如何更新?谢谢。 最佳答案 首先,确保你理解,如果你需要使
我可以使用echo生成UTF-8文本文件吗?例如,如果我想生成一个包含字符ę的文件:echo"abcdę">out.txt(批处理文件使用UTF-8编码)结果是一个ANSI编码文件,ę字符被转换为ê。我如何说服echo生成UTF-8文件?如果不可能,那么我可以在创建文本文件后更改其编码吗?gnuwin32包中是否有任何工具可以帮助我更改编码?谢谢 最佳答案 使用chcp命令将utf-8的事件代码页更改为65001。chcp65001 关于windows-在Windows批处理中回显UTF
我想用\拆分字符串(有路径)并在变量中获取最后一个文件夹名称。请帮忙。例如我的路径=D:\FOLDER1\FOLDER2\FOLDER3\我想要一个变量中的FOLDER3。我尝试使用下面的命令,如果最后一个字符不是\则该命令有效:for%fin(C:\FOLDER1\FOLDER2\FOLDER3)dosetmyfolder=%~nxf如果最后一个字符是\则不起作用如果像这样使用变量,它也不起作用:为(%mypath%)中的%f设置myfolder=%~nxf 最佳答案 @echooffsetMYDIR=C:\FOLDER1\FOL
我在一个非常复杂的目录结构中有许多文件,出于不值得讨论的原因,我需要将所有扩展名为“.inp”的文件重命名为“.TXT”扩展名。我不想触及许多具有其他扩展名的其他文件,我想递归地向下执行至少5个级别。到目前为止我有:for/d%%xin(*)dopushd%%x&Ren*.inp*.TXT&popd...但这只会下降一级目录。有人可以帮忙吗?提前致谢! 最佳答案 在Windows7上,以下单行命令对我有用,可以递归地将*.js中的所有文件重命名为*.txt:FOR/R%xIN(*.js)DOren"%x"*.txt
我需要编写一个在Windows中运行的脚本,当执行时会在一些子目录中运行一个命令,但不幸的是我从来没有做过任何批处理,我不知道从哪里开始。以文件夹结构为例:\root\one\two\three\four我希望脚本进入指定的文件夹(例如,只有“一”和“四”),然后在该文件夹的每个子目录中运行一些命令。如果您能提供任何帮助,也许是一些基本教程或只是我需要的命令名称,我将不胜感激。 最佳答案 您可以告诉批处理迭代目录:for/d%iin(C:\temp\*)do(cd"%i"&*enteryourcommandhere*)直接在命令行运
下面的嵌套for循环让我抓狂(在Windows7上):@echooffSetLocalEnableDelayedExpansionsetTESTDIRS=fastmidslowsetTD=src\test\resources\testsuitefor%%din(%TESTDIRS%)do(setCTD=%TD%\%%dechoCTD:!CTD!REMEchostheexpectedpathechoCTD:%CTD%REMEchosnothing--understandablefor/R!CTD!%%fin(*.fs)do(echo%%f)REMEchosnothing--why?for
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。我想将文件名重命名为"how-to-rename-file.jpg"到"how-to-reuse-file.jpg"使用Windows批处理文件即我只想替换文件名中的一两个词。