Arquivo em lote para procurar e excluir linhas contendo texto específico

0

Eu tenho um arquivo bat que pesquisa um diretório para nomes de arquivos .csv específicos e copia e altera as linhas em um novo arquivo .csv.

No entanto, algumas das linhas dos arquivos .csv originais não são informações necessárias e começam com PO - . Eu gostaria de adicionar ao meu bat um caminho para procurar por células contendo "PO -" e excluir a linha inteira e, em seguida, salve os resultados em um novo arquivo .csv. É possível?.

O que eu tenho até agora no meu arquivo .bat é:

REM

@ Echo off

Echo on

type NUL>fdx.csv

copy pds*.csv fdx.csv
    
por Hoehner 16.04.2014 / 19:38

2 respostas

0

Talvez você possa usar FIND

find /V "PO-" fdx.csv > new.csv

mas você terá um cabeçalho no arquivo csv que você deve remover manualmente

    
por 16.04.2014 / 22:35
1

FINDSTR funcionará melhor;

findstr /v /i /b "PO-" fdx.csv > new.csv

/ v irá excluir linhas com "PO -"

/ b só procurará PO no início da linha

/ eu não faço distinção entre maiúsculas e minúsculas (então Po-, po-pO -)

Ou, com FIND, você pode usar MORE + x para pular x linhas e remover o cabeçalho que ele deixa para trás;

more +1 | find /v "PO-" fdx.csv > new.csv
    
por 15.08.2016 / 08:31

Tags