Я не уверен, как именно работает npm
, но по своему опыту я предполагаю, что аргументы командной строки передаются непосредственно в вызываемый исполняемый файл (двоичный файл или скрипт). Это означает, что ваш скрипт на самом деле называется как
/path/to/comgen -days "x number of days" -totalNumberOfCommits "x number of commits"
Теперь это чистый Bash для анализа аргументов cmdline. Вы оцениваете опцию и решаете, какое будет следующее значение:
days=3
hours=24
minutes=60
totalNumberOfCommits=3
while [ $# -ne 0 ]; do
case "$1" in
"-d"|"-days") days=$2; shift 2;;
"-tc"|"-totalNumberOfCommits") totalNumberOfCommits=$2; shift 2;;
# "-x"|"-xx"|"-xxx") : Process another option; shift 2;;
*) break;;
esac
done
lenghtOfTime=$((days*hours*minutes))
... rest of the code