for-loop - 基于现有文件创建多个文本文件
问题描述
我有大量现有文件。我想创建新的文本文件,其中包含现有文件的名称以及一些附加文本,然后根据原始文件名使用不同的扩展名命名文件。我可以使用命令或 powershell。
例如。
当前文件名
123.yuv
456.yuv
新(单独)文件中的内容
123.yuv 你好世界123
456.yuv 你好世界546
新文件名
123.avs
456.avs
我尝试过的:我创建了这个简单的代码,将所有输出放入一个文件中。然后我可以通过一些旋转来创建单独的文件。但是直接创建单独的文件会更容易。我已经研究过,但无法弄清楚。
(for %i in (*.yuv) do @echo %i Hello world%i) > "%~ni.avs"
解决方案
下面的代码应该完成你想要的:
for %i in ("*.yuv") do > "%~ni.avs" echo/%~i Hello World%~ni
由于在您的代码中您在整个for
循环周围放置了括号,重定向>
发生在循环上下文之外,因此循环变量%~ni
不可用。
推荐阅读
- django - 将模型条目显示为表格中的表单
- javascript - 与 ngOnInit() 和 ngAfterContentInit() 混淆
- javascript - Vue如何解决Uncaught SyntaxError: Function statements require a function name
- regex - 复杂匹配的正则表达式最小长度
- python - 如何删除唯一行并保留数据中的重复值
- bash - 在 shell 脚本中使用路径字符串时,它将被转换为包含子项的字符串
- c# - EF Core 2.2 AsNoTracking + Include 引发延迟加载错误。怎么修?
- postgresql - 等待服务 postgres 启动 dockerfile
- python-3.x - 如何从文本中分离特定字符串并将它们添加为列名?
- javascript - ES6 使用静态方法创建新实例为子类属性提供未定义