我正在编写一个脚本,用于复制、移动或重命名在文件夹中找到的最后一个文件,但我无法将其转到另一个文件夹
我知道 pushd 是它没有将文件放在正确文件夹中的原因
我试图删除它,但似乎无法使其正常工作
现在我确实搜索了您的网站并找到了如何移动最后修改的文件或创建的文件,但在我的情况下它需要是最后一个文件
这是剧本
pushd Folder1
for /f "tokens=*" %%a in ('dir /b ') do set newest=%%a
copy "%newest%" Folder2
popd
我得到的结果是一个名为Folder2的无扩展文件
我也试过了
for /f in ("Folder1") do (
for /f "tokens=*" %%a in ('dir /b ') do set lastfile=%%a
move "%lastfile%" Folder2
)
我尝试重命名
pushd Folder1
for /f "tokens=*" %%a in ('dir /b ') do set lastfile=%%a
ren "%lastfile%" "Folder2\NewFile.txt"
popd
我需要做的就是找到文件夹中的最后一个文件并移动到另一个文件夹并重命名为新名称
谢谢
这就是我想要得到的结果
Before
Folder1
...filename1.txt
...filename2.txt
Results
Folder1
...filename1.txt
Folder2
...NewFilename.txt
好吧,我找到了另一种方法
这里是如何找到你的最后一个文件,我基于重命名,所以这将跟踪你文件夹中的最后一个 txt 文件,并将它重命名为你想要的名称 然后我制作了一个移动脚本,将新的 filename.txt 移动到所需的文件夹
pushd Folder1
for /f "tokens=*" %%a in ('dir /b ') do set LastFile=%%a
ren "%LastFile%" NewFileName.txt
popd
move "Folder1\NewFileName.txt" "Folder2"
这对我有用
希望对别人有帮助