linux - 是否可以将目录中的所有文件重命名为 0.jpg、1.jpg、2.jpg 等?

标签 linux windows file rename

我的目录中有一堆图像(100+),它们的名称都不同。有什么方法可以将它们重命名为 0.jpg、1.jpg、2.jpg 等,可能使用脚本(我运行的是 Windows),而不必单独重命名每个文件?如果在 Windows 中无法实现,我可以启动 Linux 虚拟机并将它们复制过来。

到目前为止我已经得到了

@echo off
setlocal enableDelayedExpansion
set MYDIR=F:\Pictures\Wallpapers
set /a count = 0
for /F %%x in ('dir /B/D %MYDIR%') do (
  echo %%x
  @echo !count!
  set /a count+=1
)

它显示正确的文件名和正确的计数器,但是当我尝试时

ren %%x !count!.jpg

告诉我“系统找不到指定的文件。”

最佳答案

您没有提供源文件的完整路径。不要忘记 %%x 只是文件名;您需要在前面添加 %MYDIR% 以获得完整路径:

ren %MYDIR%\%%x !count!.jpg

关于linux - 是否可以将目录中的所有文件重命名为 0.jpg、1.jpg、2.jpg 等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14924260/

相关文章:

windows - 如何在 Pascal Script/Inno Setup 中使用 WinAPI 中的 PathCombine()?

C# 保存到文本文件中的多行

python - 为 python 目录中的每个模块调用特定函数

Python 3 异步 : run_until_complete() blocks when waiting for ProcessPoolExecutor job done

linux - 在 IntelliJ IDEA 中隐藏特定文件

linux - 在将文件写入文件时在 bash 终端中观察文件输出

python只将最后的输出写入文件

php - 限制访问我网站上的图像,除非通过我自己的 html

windows - 使用 FileSystemWatcher 在 Windows 服务中一次处理多个文件时出现问题

c++ - C++ 中的控制台暂停?