¿Por qué es incorrecta la sintaxis de este comando de copia?

3

En Windows 10, el siguiente comando:

copy /y libPitchExtraction.so C:\Users\adams_000\CODE\C++\PitchExtraction\android-armv7\android-build\libs\armeabi-v7a\libPitchExtraction.so

causa el error:

La sintaxis del comando es incorrecta.

Poner el último parámetro entre comillas resuelve el problema, sin embargo, no me es posible hacerlo, ya que este comando se genera automáticamente y no sé cómo cambiarlo (parte de la cadena de herramientas de compilación Qt Android).

Si pudiera ayudar, podría cambiar la ubicación del proyecto, pero no sé qué está causando el problema en primer lugar, ya que no hay espacios en blanco ni caracteres especiales, al menos debido a esta guía ( http: / /www.robvanderwoude.com/escapechars.php )

Adam Streck
fuente
Puede estar relacionado con la ++estructura de su directorio ...?
Kinnectus
Asumido correctamente, mover el proyecto para que la carpeta "C ++" se quede fuera resolvió el problema. ¿Alguna idea de por qué ese es el caso? Hasta donde yo sabía, "+" no debería tener ningún significado especial.
Adam Streck
Un simple +podría no ser un doble, sin embargo, no lo sé :) Puede estar asumiendo algún tipo de concatenación o ubicaciones múltiples (la "fuente" copytiene +como una forma de copiar múltiples archivos) ...
Kinnectus

Respuestas:

0

Que yo sepa, +no debería tener ningún significado especial

+tiene un significado especial para copy. Indica que los archivos deben combinarse como parte del proceso de copia.

Para combinar archivos, especifique un solo archivo para el destino, pero varios archivos como origen. Para especificar más de un archivo, utilice comodines o enumere los archivos con un +en medio entre cada ( file1+file2+file3)

  • El +debe probablemente sólo ser reconocido como un operador de combinar cuando se está al principio de un nombre de archivo, por lo que su caso particular puede ser un error en el procesamiento de línea de comandos para copy.

Sintaxis

COPY [options] [/A|/B] source [/A|/B] [+ source2 [/A|/B]...] [destination [/A|/B]]

COPY source1 + source2.. destination [options]

...

Combinando archivos

Para combinar archivos, especifique un solo archivo para el destino, pero varios archivos como origen. Para especificar más de un archivo, utilice comodines o enumere los archivos con un + entre cada uno (archivo1 + archivo2 + archivo3).

Al copiar múltiples archivos de esta manera, el primer archivo debe existir o, de lo contrario, la copia fallará, una solución para esto es COPY null + file1 + file2 dest1

Fuente - copia


Otras lecturas

DavidPostill
fuente