How Candece skill handle double quotes & backslash in ipcBeginProcess?
"python \"C:\\Users\\Administrator\\Desktop\\for test\\a.py\""
ipc = ipcBeginProcess( command)
ipc:42
line = ipcReadProcess( ipc)
"python: can't open file 'C:\\\\Users\\\\Administrator\\\\Desktop\\\\for': [Errno 2] No such file or directory\r\n"
command = "python \"\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\"\""
"python \"\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\"\""
ipc = ipcBeginProcess( command)
ipc:43
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\""
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\""
ipc = ipcBeginProcess( command)
ipc:44
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"1 1\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"1 1\" "
ipc = ipcBeginProcess( command)
ipc:45
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '1', '1']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"2 2\"\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"2 2\"\" "
ipc = ipcBeginProcess( command)
ipc:46
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '2 2']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"\"3 3\"\"\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"\"3 3\"\"\" "
ipc = ipcBeginProcess( command)
ipc:47
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '3 3']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"\"\"4 4\"\"\"\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"\"\"4 4\"\"\"\" "
ipc = ipcBeginProcess( command)
ipc:48
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '4', '4']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"\"\"\"5 5\"\"\"\"\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \"\"\"\"\"5 5\"\"\"\"\" "
ipc = ipcBeginProcess( command)
ipc:49
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '5', '5']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \\\"1 1\\\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \\\"1 1\\\" "
ipc = ipcBeginProcess( command)
ipc:50
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '1 1']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \\\"\\\"1 1\\\"\\\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \\\"\\\"1 1\\\"\\\" "
ipc = ipcBeginProcess( command)
ipc:51
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '1', '1']\r\nHello World\r\n"
command = "python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \\\\\"1 1\\\\\" "
"python \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\" \\\\\"1 1\\\\\" "
ipc = ipcBeginProcess( command)
ipc:52
line = ipcReadProcess( ipc)
"['C:\\\\Users\\\\Administrator\\\\Desktop\\\\for test\\\\a.py', '\\\\1', '1\\\\']\r\nHello World\r\n"
Why Cadence skill handle " and / in this way ?? what it is rules ?? by cmd -c or createProcess ?? I can't not understand
when I call by
\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\"
it will fail, but
\"\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\"\" \\\"C:\\Users\\Administrator\\Desktop\\for test\\a.py\\\"
will success and
"1 1" =>'1', '1'
""2 2"" => '2 2'
"""3 3""" => '3 3'
""""4 4 """" or more=> '4', '4'
\\\"1 1\\\" => '1 1'
\\\"\\\"1 1\\\"\\\" => '1' '1'
\\\\\"1 1\\\\\" => '\\\\1' '1\\\\'
Does any one knows the rule ??