Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否在windows中批量重命名多个文件?_Windows_File_Batch File_Renaming - Fatal编程技术网

是否在windows中批量重命名多个文件?

是否在windows中批量重命名多个文件?,windows,file,batch-file,renaming,Windows,File,Batch File,Renaming,我想知道我的编码有什么问题,因为它不起作用 我想重命名Chris里面的所有png文件 但它失败了 for /f in ('C:/Users/Chris/Downloads/images/*.png') do ren "C:\Users\Chris\Downloads\images\*.png" "%date:~10,4%-%date:~4,2%-%date:~7,2%_%HR%%time:~3,2%-img.png" 参数中不需要/f,不需要引号,但缺少变量声明 应该在do部分中使用该变量

我想知道我的编码有什么问题,因为它不起作用

我想重命名Chris里面的所有png文件

但它失败了

for /f  in ('C:/Users/Chris/Downloads/images/*.png')
 do ren "C:\Users\Chris\Downloads\images\*.png" "%date:~10,4%-%date:~4,2%-%date:~7,2%_%HR%%time:~3,2%-img.png"

参数中不需要/f,不需要引号,但缺少变量声明

应该在do部分中使用该变量,否则for就没有真正的帮助

for将枚举完整路径,因此需要使用~n剥离文件名

do部分必须直接位于for语句的后面,或者必须位于圆括号内

以下是完整的代码:

for %%i  in (C:/Users/Chris/Downloads/images/*.png) do (
   ren "%%i" "%date:~10,4%-%date:~4,2%-%date:~7,2%_%HR%%time:~3,2%-%%~niimg.png"
)

参数中不需要/f,不需要引号,但缺少变量声明

应该在do部分中使用该变量,否则for就没有真正的帮助

for将枚举完整路径,因此需要使用~n剥离文件名

do部分必须直接位于for语句的后面,或者必须位于圆括号内

以下是完整的代码:

for %%i  in (C:/Users/Chris/Downloads/images/*.png) do (
   ren "%%i" "%date:~10,4%-%date:~4,2%-%date:~7,2%_%HR%%time:~3,2%-%%~niimg.png"
)
如果要使用for循环,即使在循环中根本不使用变量,也需要指定要使用的变量,否则会出现语法错误。虽然变量只能是一个字母,但这几乎是批处理中唯一一次变量区分大小写,所以有52个字母,加上我看到的一些额外字符,如。此外,do必须始终与同一行

for/F循环可以处理字符串、文本文件和其他批处理命令

要处理字符串,请使用双引号:在hello world do echo%%A中为/F%%A使用双引号 要处理批处理命令,请使用单引号:“dir/b”do echo%%A中的/F%%A 要处理文本文件,请不要使用任何引号:对于C:\Users\Chris\image\u list.txt中的/F%%A,请使用echo%%A 您可能还想进入您正在处理的目录,以便简化操作

pushd C:\Users\Chris\Downloads\images
for /F %%A in ('dir /b *.png') do (
    REM I'm not sure what the %HR% variable is supposed to be, so I'm ignoring it.
    ren "%%A" "%date:~10,4%-%date:~4,2%-%date:~7,2%_%HR%%time:~3,2%-img.png"
)
如果要使用for循环,即使在循环中根本不使用变量,也需要指定要使用的变量,否则会出现语法错误。虽然变量只能是一个字母,但这几乎是批处理中唯一一次变量区分大小写,所以有52个字母,加上我看到的一些额外字符,如。此外,do必须始终与同一行

for/F循环可以处理字符串、文本文件和其他批处理命令

要处理字符串,请使用双引号:在hello world do echo%%A中为/F%%A使用双引号 要处理批处理命令,请使用单引号:“dir/b”do echo%%A中的/F%%A 要处理文本文件,请不要使用任何引号:对于C:\Users\Chris\image\u list.txt中的/F%%A,请使用echo%%A 您可能还想进入您正在处理的目录,以便简化操作

pushd C:\Users\Chris\Downloads\images
for /F %%A in ('dir /b *.png') do (
    REM I'm not sure what the %HR% variable is supposed to be, so I'm ignoring it.
    ren "%%A" "%date:~10,4%-%date:~4,2%-%date:~7,2%_%HR%%time:~3,2%-img.png"
)