Windows CMD文件的长度限制为256个字符

Windows CMD文件的长度限制为256个字符,windows,path,cmd,business-intelligence,informatica,Windows,Path,Cmd,Business Intelligence,Informatica,我正在使用Informatica 9.5生成一个.CMD文件。它创建两个移动命令(在同一个文件中,两条单独的行),路径从参数文件中拾取。MOVE命令的总长度超过256个字符,当生成.CMD文件时,它会在达到该字符限制时截断该路径 我如何解决这个问题 我在Informatica转换中使用的表达式是: 'MOVE "' || $$FROM_PATH1 || 'FOO.ZIP" "' || $$TO_PATH || 'FOO' || '.ZIP"' || CHR(10)

我正在使用Informatica 9.5生成一个.CMD文件。它创建两个移动命令(在同一个文件中,两条单独的行),路径从参数文件中拾取。MOVE命令的总长度超过256个字符,当生成.CMD文件时,它会在达到该字符限制时截断该路径

我如何解决这个问题

我在Informatica转换中使用的表达式是:

'MOVE "'  ||  $$FROM_PATH1  || 'FOO.ZIP"  "'  || $$TO_PATH  ||   'FOO' ||  '.ZIP"'  || CHR(10)      ||  
'MOVE "'  ||  $$FROM_PATH2  || 'BAR.ZIP"  "'  || $$TO_PATH  ||   'BAR'  ||  '.ZIP"'
生成CMD文件时,它会截断第二个变量,如下所示:

MOVE "\\ABC\XYZ\FOLDER1\FOO.ZIP" "\\ABC\XYZ\FOLFOO.ZIP"
MOVE "\\ABC\XYZ\FOLDER2\BAR.ZIP" "\\ABC\XYZ\FOLBAR.ZIP"

假设$$TO_PATH是\\ABC\XYZ\FOLDER3\,请注意,它已截断变量路径,但仍添加了硬编码字符。给出了什么?

最可能的问题是目标端口被定义为255个字符,或者映射期间的另一个转换被限制为255个字符


增加有问题的端口的大小以解决问题。

听起来您用来生成.cmd文件(或如何使用它)的工具有问题。如果MOVE命令的总长度小于256个字符,它就可以正常工作。因此,Informatica将某个位置的行字符限制设置为256个,或者CMD文件每行不能超过256个字符。您可以在CMD.exe提示符下键入echo命令并查看是否可以回送超过255个字符来测试这一点。你会发现它可以。因此,您用来生成.cmd文件的工具存在限制,而不是cmd.exe本身。难道表达式的任何端口都太短了吗?@MarekGrzenkowicz谢谢您的回答。我进去查看了在转换中使用的参数,那个特定的参数确实有错误的精度。不是在表达式或目标端口上,而是在参数精度本身上。愚蠢的错误。此文件涉及的所有转换和目标端口的字符串数据类型精度都设置为1000。