一个 .bashrc 函数来保存快速笔记/有趣的命令

一个 .bashrc 函数来保存快速笔记/有趣的命令

通常,我想在终端中工作时快速记下一些东西 - 要做的事情,有趣的事情等等。所以我想我应该在我的.bashrc

export QUICKY="$HOME/Documents/Notes/quickies"
quicky(){
  if (( $# == 0 )) ; then
    vim $QUICKY
    return
  fi
  for i in $@; do
    echo "$i" >> $QUICKY
  done
}

所以这真的很简单。用例可能是quicky meeting快速记录会议或类似的事情。如果我愿意的话,我会quicky阅读笔记并进一步组织。

假设我做了类似的事情quicky "Feed the dog",我期望 $QUICKY 中有一个新行feed the dog,但每个单词都出现在一个新行中。我该如何解决这个问题?

附言。快点“!!”快速记下您想稍后阅读的有趣命令将非常有用。

尽管有关任何其他现成工具的建议和答案都可以,但我想知道如何使用 bash 来做到这一点。

答案1

你需要引用你的变量。尝试这个:

quickFile="$HOME/Documents/Notes/quickies"
quicky(){
  if (( $# == 0 )) ; then
    vim "$quickFile"
    return
  fi
  for i in "$@"; do
    printf '%s\n' "$i" >> "$quickFile"
  done
}

我更改了您的变量名称,因此它不是大写的。通常最好避免在 shell 脚本中使用大写变量名称,以避免与环境变量发生名称冲突。我也用过printf用过这是一个更好的选择用于打印任意数据。

相关内容