创建 .bat 文件的最快方法如 .txt

问题描述

我在 Windows 10 的批处理文件中有几行代码,用于打开 Octave 会话,并加载使用 .txt 文件中包含的设计参数的脚本。批处理文件命名为(例如)“Design123.bat”,当Octave运行时,通过对文件名进行简单的字符串操作,自动在“Design123.txt”文件中找到设计参数,即strrep(filename,".bat",".txt"),其中 filename = '%~dpn0' 从批处理文件传递给 Octave。这允许批处理文件内容保持简单和不变,并且批处理文件文件名是唯一将其绑定到 .txt 文件内容

为方便起见,我执行所有这些操作是为了允许通过双击批处理文件来运行 Octave 脚本,而不是被迫在 Octave 中使用更乏味的 uigetfile 过程。这很有效,但问题是我必须将批处理文件的副本与设计 (.txt) 文件(其中有数千个,但每个都在自己的目录中)放在同一目录中,并为其提供相同的文件名以使其工作。有没有办法以某种方式快速创建批处理文件?我能想到的最理想的情况是能够右键单击(或以某种方式选择)一个 .txt 设计文件,然后创建一个批处理文件(用 .bat 替换 .txt)并将我的代码行放入其中。

有什么想法吗?我有编码经验,但仅限于像 VBA 和 Octave 这样的软件包,而不是在操作系统本身中,尽管如果我能找到正确的方向,我当然愿意学习。设计文件名遵循独特的模式,因此可以在 Windows 10 中活动的“文件资源管理器”窗口的操作中轻松过滤它们(如果可能的话)。提前致谢。

解决方法

您可能想用 calling the script on the right click 编写对 running the .m script command line arguments 中问题的答案。

如果失败,uigetfile 肯定不是获取文件的唯一方法。至少,您始终可以将路径字符串从资源管理器复制粘贴到文件夹中,再到八度函数调用。

最后,我想我会提到在终端而不是 gui 中运行的 octave-cli 的存在。它可能更适合运行非交互式脚本。