Новая колонка каждый раз, когда я запускаю скрипт

Новая колонка каждый раз, когда я запускаю скрипт

у меня проблема. Я хочу сделать скрипт bash, который записывает данные в новый столбец каждый раз, когда я запускаю скрипт. Например, каждую неделю я проверяю, сколько файлов в каждой папке у меня есть.

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

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

Я запускаю скрипт каждый понедельник, но я не хочу перезаписывать данные. Мне нужно, чтобы новые данные были в новом столбце.

Например:

Week1 Week2 Week3 ...
  2     3     5
  1     2     3

решение1

#!/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

решение2

Вы можете получить выходной сигнал таким образом.

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

Это всего лишь пример. Вы можете изменить его по своему усмотрению.

Связанный контент