我正在使用windows的cmd,并试图在循环中设置一个变量。下面是我的代码:
for /d %%a in ("F:\backup*") do set folder=%%a
ECHO %folder%
PAUSE
我想寻找一个名为“备份”的文件夹,并将该文件夹的名称保存到%文件夹%变量中。例如,如果文件夹名为“Backup2017-01-18”,我希望将其保存到var中。
相反,它似乎没有设置任何东西,因为回声只是打印“回声是打开的”。for循环是正确的,文件夹也在那里(我已经为其他批处理使用了这段代码和机器人副本)。
理论上,我可以将我的所有代码放入FOR循环中,使用%a而不
我有一个简单的批处理文件:
@echo off
set username=user
set password=pass
::do some things with the username and password
用户只需从cmd调用批处理文件,并在我的批处理文件运行完后输入set,并查看用户名和密码。有办法解决这个问题吗?(不包括bat到exe转换器)
如果找不到匹配的文件,或者批处理文件出现类似这样的错误,是否有一种方法可以捕获错误?
...
Rebuild complete.
Syntaxerror.
Syntaxerror.
Syntaxerror.
Uploading artifacts...
WARNING: Ticket/Ticket_111b: no matching files
WARNING: Failed to load system CertPool: crypto/x509: system root pool is not available on Windows
Uploading artifacts t
我需要创建一个批处理文件来删除用户appdata中的特定文件。批处理文件作为本地系统执行。
我确实测试了以下senarios:命令提示符作为localsystem -此works命令提示符为admin -此works命令提示符为user -此命令提示符适用于用户拥有权限的所有文件夹
一旦我把for循环放在一个批处理文件中,它就会继续工作。它也涉及到在什么上下文(用户,管理,本地系统)我启动它。
for /D %i in ("C:\Users\*") do del /Q /F "%i\AppData\LocalLow\Sun\Java\Deployment\deploym
我一直在使用从批处理文件运行的脚本来创建和编辑表。据我所知,它正在工作,我在一个不同的问题上工作。
然而,在某种程度上,有些地方出了问题。
在PLSQL Developer中,我试图从表中进行选择,但得到了错误:
ORA-01775: looping chain of synonyms
如果我尝试删除该表,则会得到以下错误:
ORA-00942: table or view does not exist
我从来没有故意创建过和同义词,所以我检查了一下:
SELECT owner,synonym_name,table_owner,table_name from dba_synonyms wher
因此,很明显,批处理文件注释中的语法无效是可能的。请有人解释一下,为什么下面的代码在批处理文件中会导致语法错误?
rem %~mdir%
cmd.exe发出的确切信息是:
The following usage of the path operator in batch-parameter
substitution is invalid: %~mdir%
For valid formats type CALL /? or FOR /?
The syntax of the command is incorrect.
我使用批处理文件来删除设置目录中的文件和文件夹。但是想知道是否有一种方法可以将当前代码简化为几行左右,而不是对不同的目录重复每一行。
下面是我的当前代码。
@echo off
DEL /A /F/Q /S "C:\Users\Testing\Documents\*.*"
FOR /D %%p IN ("C:\Users\Testing\Documents\*.*") DO RD "%%p" /S /Q
DEL /A /F/Q /S "C:\Users\Testing\Downloads\*.*"
FOR /D %%p IN (
在删除一定大小以下的文件时,我使用以下批处理脚本。
@echo off
setlocal
:: Size is in bytes
set "min.size=100000"
for /f "usebackq delims=;" %%A in (`dir /b /A:-D *.*`) do If %%~zA LSS %min.size% del "%%A"
如果我将批处理文件放入文件夹中,这是可行的,但它也会删除批处理文件。
但是,如何将批处理文件保持在不同的位置并显式地指定目录路径?
我有一段用批处理文件编写的代码,它在用户输入的文件夹名中查找预定义的文件。如果用户没有在双引号中输入文件夹名,这很好。但是,当他输入双引号时,批处理文件中的for循环部件将失败。
代码:
FOR /F "usebackq delims=, skip=4" %%I IN (%A%\A.txt) DO ECHO %%I
当A的值以双引号形式给出时,如果出现错误,则系统将无法找到文件F:\\A.txt
我有一个Powershell脚本,它调用一个构建脚本批处理文件来设置一个项目。构建脚本依次调用另一个批处理文件。
setup-Environment.ps1
FullRebuild.cmd
GetSource.cmd
Powershell脚本
Invoke-Expression -command FullRebuild.cmd
FullRebuld.cmd脚本使用版本号参数调用GetSource
GetSource 10.1.0
在powershell中我得到了以下错误:
FullRebuild.cmd : 'GetSource' is not recognized as a
for %%i in (foo bar) do @move %%i dir
这是批处理文件的内容。它必须将文件移动到dir。但是它返回错误,
C:\>for %i in (foo bar) do @move %i dir 'for' is not recognized as an internal or external command, operable program or batch file.
这个字符∩╗┐是什么?我检查了notepad++,在批处理文件中没有发现任何隐藏的字符。
我在我的Windows批处理文件中得到"goto在这个时候是意外的“错误。如下所示。我没有头绪。有人能帮我吗?谢谢
@setlocal EnableExtensions EnableDelayedExpansion
@echo off
SET TEMPERL=%TMP%\perlversion.txt
for /f "tokens=*" %%a in (%TEMPERL%) do (
set line=%%a
if not "%line:subversion%"=="%line%" goto GETVERSION
)
:GE
我有一个批处理文件,它应该得到一个目录,并使用我拥有的应用程序处理其中的所有jpeg文件。
批处理文件是:
for %%I in (%1\*.jpg) do (
bin\process.exe %%I "%~dpI\output\%~nxI"
)
但是,当我运行这个批处理文件时,我得到了以下错误:
路径运算符在批参数替换中的下列用法无效:%~dpI\output\%~nxI“
我读了格式说明符,它说:
%~dpI - expands %I to a drive letter and path only
%~nxI - expands %I to a fi
目标:这个守护进程维护打开哪个文本文件的时间的日志。
第一步:我创建了一个空的批处理文件,这个文件将把事件记录到一个临时日志文件中。
步骤II:将文本文件与此批处理文件程序相关联
i) I right clicked on one text file.
ii) I clicked on "open with" option
iii) Then I chose my batch file program.
Now as I open any text file my batch file program starts running.
第三步:批量