Leia CSV para variável e verifique as células nessa linha para outra variável

1

Estou tentando criar um arquivo em lote para ler um arquivo CSV para encontrar um nome de usuário que será uma variável e, em seguida, verifique as próximas 10 células nessa linha se elas corresponderem a outra variável que será um número.

Exemplo de CSV:

bsmith, 22, 14, 15, 12, 18, 19
cwright, 10, 15, 11, 2
hwrong, 2, 6, 3
csmith, 10, 16, 19, 3, 5, 19, 18, 7, 2, 4

qualquer ajuda seria muito apreciada! Obrigado

Eu tenho isso para encontrar o nome de usuário, mas agora quero verificar os números se eles corresponderem a outra variável:

As variáveis são: 'username' e 'sitenum'

findstr /c:"%username%" "ACL.csv" >nul 2>&1
IF NOT ERRORLEVEL 1 (
echo AUTHORIZED
) else (
echo UNATHORIZED!!!!
)
    
por JimBean2208 12.12.2017 / 21:29

2 respostas

1

Eu quero verificar os números se eles corresponderem a outra variável

Apenas canalize ( | ) a saída do primeiro findstr para outro findstr da seguinte forma:

findstr /c:"%username%" "ACL.csv" | findstr /c:" %sitenum%," >nul 2>&1

Nota:

  • os principais (espaço) e , (vírgula) são importantes, pois isso evita 1 correspondência 11 (por exemplo)
por 12.12.2017 / 21:58
0

Se você usar as opções de expressão regular limitada do comando FINDSTR, poderá fazê-lo com um FINDSTR.

findstr /r /c:"%username%,.* %sitenum%," /c:"%username%,.* %sitenum%$" "ACL.csv"
    
por 13.12.2017 / 00:25