我有一个脚本旨在根据日期打开文件。
这个想法是,如果存在不同年份但同一天/月份的文件,则打开它们。
它还必须打开今天的文件,无论今天是否存在。
这是当前的脚本
#!/bin/bash
TODAY=$(date +%Y-%m-%d).md
PAST=$(ls 20??-$(date +%m-%d).md)
if [[ -z "$PAST" ]]; then
DATE=$TODAY
else
DATE=$PAST
fi
nvim -O $DATE $TODAY
当然,这里的问题是,如果今天的文件已经存在,那么 vim 将打开它的两个实例。如果我不添加最后一个 $TODAY,那么今天的文件(如果不存在)将不会被创建。我正在努力想出一个优雅的解决方案来解决这个问题,该解决方案不依赖于复杂的 if 实例。
答案1
这似乎可以做到:
if [[ $PAST != *"$TODAY"* ]]; then
DATE="$PAST $TODAY"
else
DATE="$PAST"
fi
nvim -O $DATE