У меня есть 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
И это сделать кошке файлы в месяц, но теперь мне нужно вызвать скрипт с specif IC неделю в течение года:
bash script2.sh 2012-01
где 2012 год и 01 месяц
Теперь мне нужно вызвать скрипт с:
bash script2.sh 2012 13
где 2012 год и 13 неделя в году
Теперь мне нужен кот только к файлам в году и неделю, указанным пользователем, нет в месяц в неделю
Но формат файлов мне не помогает !!!! потому что имя is transaction-year-month-day.csv.bz2, а не transaction-year-week.csv.bz2
transaction-date.csv.bz2, где дата может быть 2012-01-02 или некоторая дата –
Итак, вы спрашиваете: «Как в оболочке я конвертирую год и номер недели в свой составной год-месяц-день даты?» Неделя начинается в воскресенье или в понедельник? Пронумерованы ли недели 00 .. 53 или 01 .. 53 (ISO)? – pilcrow
Действительно ли работает ваш оригинальный скрипт? Там отсутствует "... – tink