windows - FC 命令找不到现有目录
问题描述
当我运行代码时,fc
说它没有找到任何这样的目录。这是它在fc "C:\Users\%username%\AppData\LocalLow\Amistech\My Summer Car\defaultES2File" "Saves\backup_%curdt%\defaultES2File"
. 如果您愿意,我会添加更多代码,但这是最重要的一点。
:check
echo checking
attrib "data.txt" -h
pause
fc "C:\Users\%username%\AppData\LocalLow\Amistech\My Summer Car\defaultES2File" "Saves\backup_%curdt%\defaultES2File"
pause
这是该目录存在的证明 https://drive.google.com/file/d/1kp02bvZu9XA-sV2wD8HQWUfKUIuJUfrj/view?usp=sharing
这是控制台输出。我不知道为什么,但它以大写字母显示,我不知道这是否重要。
https://drive.google.com/file/d/1WXzosPaMY5GD0KcBg74ZvOzX0sgeZHXV/view?usp=sharing
解决方案
您的问题是您没有使用正确的文件名。
您的文件是文本文件,应使用.txt
扩展名命名。
"C:\Users\%username%\AppData\LocalLow\Amistech\My Summer Car\defaultES2File.txt"
除此之外,我还建议您在比较中也使用备份文件的绝对路径。当前"Saves\backup_%curdt%\defaultES2File"
相对于命令运行时的当前目录。如果您事先专门将目录更改为正确的位置,这可能没问题,但它会更安全。至少,您可以为当前目录使用一个变量,即"%CD%\Saves\backup_%curdt%\defaultES2File.txt"
或"%__CD__%Saves\backup_%curdt%\defaultES2File.txt"
。甚至您的备份可能会进入相对于正在运行的批处理文件的位置,因此您可以改为使用,"%~dp0Saves\backup_%curdt%\defaultES2File.txt"
以确保它确实如此,并且不受当前目录更改的影响。
我建议大家始终进入他们的 Windows 资源管理器设置,并专门停止默认隐藏已知文件扩展名。通过这种方式,他们总是被告知每个文件带有什么扩展名。
在较新版本的 Windows 中,您应该能够在资源管理器功能区中执行此操作,方法是File name extensions在“显示/隐藏”部分切换复选标记。在早期版本的 Windows 中,您可能需要进入“文件夹和搜索选项”设置以取消选中该Hide extensions for known file types复选框。
推荐阅读
- amazon-web-services - 如何在 CloudFormation 模板中设置 AWS Cognito 用户密码以进行测试
- python - 自定义模型字段输出格式
- ruby - Ruby 中括号内的空格有多重要?
- macos - 将本地 docker 镜像存储在云端
- css - 无论内容如何,将项目放在一行
- r - 删除字符 / 包括它之后的所有单词
- python - 如何在 Python 中一次创建一个数据点的直方图?
- bpmn - 一个进程应该在 Camunda 中存在多长时间
- python - SQLite DB 显示已排序,但我未按排序顺序拉取行
- windows - 通过 Windows 商店安装时,Windows 应用程序摄像头无法正常工作