我在 bash 中有 2 个脚本,并且我有一些文件:
transaction-2012-01-01.csv.bz2
transaction-2012-01-02.csv.bz2
transaction-2012-01-03.csv.bz2
transaction-2012-01-04.csv.bz2
.
.
transaction-2012-01-31.csv.bz2
transaction-2012-02-01.csv.bz2
.
.
transaction-2012-02-28.csv.bz2
我有一个名为 script.sh 的脚本
cat script.sh
YEAR_MONTH=$1
FILEPATH="transaction-$YEAR_MONTH*.csv.bz2"
bzcat $FILEPATH|strings|grep -v "code" >> output
如果您需要调用脚本,您可以使用其他脚本
cat script2.sh
LAST_MONTH=$(date -d -1month +%Y"-"%m)
if [ $# -eq 1 ]; then
DATE=$1
else
DATE=$LAST_MONTH
fi
script.sh $DATE 1>output$DATE.csv 2>> log.txt
它确实会在一个月内收集文件,但现在我需要在一年中的特定周调用脚本:
bash script2.sh 2012-01
其中 2012 是年份,01 是月份
现在我需要调用脚本:
bash script2.sh 2012 13
其中 2012 是年份,13 是一年中的第几周
现在我只需要 cat 到用户指定的年份和周内的文件,而不是每周每月
但是文件的格式对我没有帮助!!!!因为名称是 transaction-year-month-day.csv.bz2,而不是 transaction-year-week.csv.bz2