Nova coluna toda vez que eu executo script

0

eu tenho um problema. Eu quero fazer um script bash que grava dados para nova coluna toda vez que eu executar o script. Por exemplo, toda semana eu verifico quantos arquivos em cada pasta eu tenho.

find /home/user/admin/stuff/ -mtime -7 | wc -l >> results.xls

find /home/user/admin/old/ -mtime -7 | wc -l >> results.xls

Eu corro script toda segunda-feira, mas não quero sobrescrever dados. Preciso que novos dados estejam em nova coluna.

Por exemplo:

Week1 Week2 Week3 ...
  2     3     5
  1     2     3
    
por Paulius 27.10.2016 / 10:29

2 respostas

0
#!/bin/bash

output_file=/tmp/results.xls

[ ! -f ${output_file} ] && echo -e "\n\n\n" > ${output_file}
stuff_count=$(find /home/user/admin/stuff/ -mtime -7 | wc -l)
old_count=$(find /home/user/admin/old/ -mtime -7 | wc -l)
now=$(date +%y%m%d)

sed -i "1 s/$/\t$now/" /tmp/out.txt
sed -i "2 s/$/\t$stuff_count/" /tmp/out.txt
sed -i "3 s/$/\t$old_count/" /tmp/out.txt
    
por 27.10.2016 / 10:51
0

Você pode ter uma saída dessa maneira.

week="" week='date' echo $week >> results.xls 
find /home/user/admin/old/ -mtime -7 | wc -l >> results.xls

# cat results.xls
Thu Oct 27 14:16:29 IST 2016
0
2

Este é apenas um exemplo. Você pode modificá-lo em seu caminho.

    
por 27.10.2016 / 10:54