xargs interpreta as barras invertidas no Windows

1

Estou usando os utilitários gnuwin32 no windows 7.

Eu quero enviar uma lista de arquivos para xargs para remover os arquivos.

mas se eu canalizar os caminhos normais do windows em seguida, o xargs interpreta e remove as barras invertidas

dir /B /S c:\windows\system32\*.sys | head | xargs echo

resulta na seguinte entrada para xargs

c:\windows\system32\clfs.sys
c:\windows\system32\win32k.sys
c:\windows\system32\drivers94bus.sys
c:\windows\system32\drivers94ohci.sys
c:\windows\system32\drivers\acpi.sys
c:\windows\system32\drivers\acpipmi.sys
c:\windows\system32\drivers\adp94xx.sys
c:\windows\system32\drivers\adpahci.sys
c:\windows\system32\drivers\adpu320.sys
c:\windows\system32\drivers\afd.sys

que então imprime

c:windowssystem32clfs.sys c:windowssystem32win32k.sys c:windowssystem32drivers1394bus.sys c:windowssystem32drivers1394ohci.sys c:windowssystem32driversacpi.sys c:windowssystem32driversacpipmi.sys c:windowssystem32driversadp94xx.sys c:windowssystem32driversadpahci.sys c:windowssystem32driversadpu320.sys c:windowssystem32driversafd.sys

com as barras invertidas removidas. Então, ao invés de simplesmente mostrar a entrada na linha de comando, ela analisa e interpreta as strings que eu acho que não deveria fazer.

Como contornar isso?

    
por vlad_tepesch 02.02.2016 / 12:48

1 resposta

0

Eu posso reproduzir suas descobertas no GNU Linux. Aqui a solução é usar o GNU Parallel. Então tente usar o GNU Parallel:

dir /B /S c:\windows\system32\*.sys | head | parallel echo

Ele foi testado no CygWin, então também pode funcionar no gnuwin32.

    
por 06.02.2016 / 22:15