Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file Windows批处理脚本中未重命名的文件_Batch File - Fatal编程技术网

Batch file Windows批处理脚本中未重命名的文件

Batch file Windows批处理脚本中未重命名的文件,batch-file,Batch File,请帮忙!我有一个执行以下任务的批处理文件: 1重命名计数器字段 2创建两个变量,稍后将用于重命名两个单独的文件 3打开SQL*Plus并启动一个Oracle脚本,该脚本启动两个单独的存储过程 4移动和重命名两个过程中的后续假脱机文件 第一个假脱机文件移动和重命名没有问题。第二个工作是劳动密集型的,不会移动或重命名。我已尝试添加超时,并确保文件夹具有正确的权限。还是没什么。我的批处理文件代码和Oracle脚本附在下面 批处理文件 Oracle脚本@C:\Schedule\pullsched0325

请帮忙!我有一个执行以下任务的批处理文件: 1重命名计数器字段 2创建两个变量,稍后将用于重命名两个单独的文件 3打开SQL*Plus并启动一个Oracle脚本,该脚本启动两个单独的存储过程 4移动和重命名两个过程中的后续假脱机文件

第一个假脱机文件移动和重命名没有问题。第二个工作是劳动密集型的,不会移动或重命名。我已尝试添加超时,并确保文件夹具有正确的权限。还是没什么。我的批处理文件代码和Oracle脚本附在下面

批处理文件

Oracle脚本@C:\Schedule\pullsched0325.sql


嗯-你知道,我认为时间和日期格式不使用反向-它们取决于本地设置。在不知道本地设置的确切细节的情况下,我们只能猜测

我建议你简单一点

echo +%newproc%+
设置之后。+只是显示任何空格的位置-没有魔力

如果结果字符串可能包含空格,则

move C:\Schedule\schedule_today2.txt "E:\Transfers\XXX\output_directory\%newproc%"
我们应该解决这个问题

应该能解决更多问题-用0替换newproc中的任何空间

如果您的格式不正确-例如,您在小时数中使用了禁止的前导空格,则可能是newproc中的结果字符串包含无效的文件名字符,如:

这一切都取决于日期/时间格式的细节


当然,您的目标目录E:\Transfers\XXX\output\u directory\exists…?

Magoo-您已经完成了!!这解决了我的问题。我通常在下午和早上晚些时候做测试。工作是早上第一件事。我很难理解。谢谢
echo +%newproc%+
move C:\Schedule\schedule_today2.txt "E:\Transfers\XXX\output_directory\%newproc%"
set "newproc=%newproc: =0%"
move C:\Schedule\schedule_today2.txt "E:\Transfers\XXX\output_directory\%newproc%"