第一篇帖子在此。
是否可以创建一个批处理文件,删除一个目录的内容,然后从另一个目录向其中添加新文件?
我正在使用 Microsoft Flight Simulator,它要求将社区插件存储在“社区”文件夹中。问题是,由于有大量飞机插件和与每架飞机一起使用的其他插件,“社区”文件夹不可避免地会被堵塞,这会影响模拟的性能。这也使得诊断与特定插件相关的性能问题变得更加困难。
我最近的解决方案是创建一系列附加有飞机名称的“社区”文件夹(Community_747,Community_310R和Community_CJ4等)并清除社区文件夹,然后根据我要驾驶的飞机将附加文件夹的内容添加到社区文件夹中。
如果我可以使用多命令批处理文件来执行该过程,那就更好了。然后,我可以将该批处理文件添加到 streamdeck 配置文件中,并为其提供飞机图标,这样就可以单击我想要使用的飞机的 streamdeck。这将使社区文件夹保持最小,并提高飞行模拟的性能,同时更容易诊断影响性能的潜在插件问题。
我希望我已经尽可能清楚地表达了这一点,并提前感谢任何可能帮助我推进此事的人。我将不胜感激。
答案1
有很多方法可以做到这一点,但对我来说最简单的方法是使用robocopy
它可以有效地同步两个目录,并可以选择从目标中删除源中未出现的项目。
有效的命令是
robocopy C:\MSFS\Community_747 C:\MSFS\Community /mir
该/mir
命令结合了另外两个选项/e
,并/purge
执行以下操作
/e
复制子目录。此选项自动包含空目录。
/purge
删除源中不再存在的目标文件和目录。将此选项与 /e 选项和目标目录一起使用,可防止目标目录安全设置被覆盖。
然后,您可以轻松地设置一堆批处理文件,这些文件只需运行 robocopy 并更改相关的源目录,并在运行过程中“清理”主目录。