Para determinar o comprimento máximo de cada coluna em um arquivo csv separado por vírgula, eu criei um script básico. Quando o executei em um sistema linux, ele produziu a saída correta, mas eu preciso que ele seja executado no OS X e se baseie na versão GNU de wc
que pode ser usada com o parâmetro -L
for --max-line-length
.
A versão de wc
no OSX não suporta essa opção específica e estou procurando uma alternativa.
Meu script (que não é tão bom - reflete minhas habilidades de script ruins, eu acho):
#!/bin/bash
for((i=1;i< 'head -1 $1|awk '{print NF}' FS=,'+1 ;i++));
do echo | xargs echo -n "Column$i: " &&
cut -d, -f $i $1 |wc -L ; done
Quais impressões:
Column1: 6
Column2: 7
Column3: 4
Column4: 4
Column5: 3
Para meu arquivo de teste:
123,eeeee,2323,tyty,3
154523,eegfeee,23,yty,343
Eu sei que instalar o GNU CoreUtils através do Homebrew pode ser uma solução, mas esse não é um caminho que eu quero seguir, já que tenho certeza de que ele pode ser resolvido sem modificar o sistema.