如何避免用vim打开多余的文件?

如何避免用vim打开多余的文件?

我有一个脚本旨在根据日期打开文件。

这个想法是,如果存在不同年份但同一天/月份的文件,则打开它们。

它还必须打开今天的文件,无论今天是否存在。

这是当前的脚本

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

相关内容