我想重命名子目录中存在的文件,文件名的已知部分是'.log'。当我尝试在
下面 ren subdirectory*.log* file2.txt
或
ren .subdirectory*.log* file2.txt
I get error: The syntax of the command is incorrect.
我有两个问题:
我是否总是需要在ren命令中为file1提供完整的路径?
如果是,那么我怎么能给完整的路径,如果我不想硬编码?
我知道我们可以使用'%~dp0'来获得当前目录路径,但我不确定如何使用'ren'。
可以添加引号:
ren "subdirectory*.log*" file2.txt
或
ren ".subdirectory*.log*" file2.txt
谢谢!
如果您想使用相对路径,/
在windows中也不正确,请使用。
如果您想搜索哪个相对路径是正确的,使用命令dir
的例子:
dir .
dir ....
dir
dir .
dir ..
ren subdirectory*.log* file2.txt
您的重命名蒙版似乎危险!
我不知道你是否可以用掩码通配符重命名许多文件到相同的名称。我认为它会覆盖每个文件到一个,或者至少它会连接到一个文件,但不确定。如果您想查看重命名掩码的一些示例,请参阅:Windows RENAME命令如何解释通配符?
小批量查看您的面具的作用:
@echo off
md Somefolder
echo some content into _file1.log>_file1.log
echo some content into _file2.log>_file2.log
echo some content into _file3.log>_file3.log
echo some content into _file999.log>_file999.log
dir Somefolder
pause>NUL
REM Correct
ren Somefolder_file???.log _file???.txt
dir Somefolder
pause>NUL
REM Incorrect because it override _file???.txt into one _file1.log
ren Somefolder_file???.txt _file1.log
dir Somefolder
pause
删除所有相对路径
*.log文件的扩展名rename ".folder1subfolder1*.log" *.