是否有一个应用程序可以将内容永久添加到路径变量中?

是否有一个应用程序可以将内容永久添加到路径变量中?

我知道使用简单的终端命令相当容易,但我仍然想要一个程序,例如:

> addtopath "~/bin" 

它可以永久执行此操作,而无需我编辑一些配置文件并记住正确的语法。外面有什么东西吗?最好用apt安装。

答案1

那个应用程序将是

echo 'PATH=$PATH:~/bin' >> ~/.profile

可以随意将其放入 shell 函数或脚本中,但老实说,我认为必须安装一个包才能将该功能封装到更简单的东西中并不是一个很好的权衡。

答案2

如上所述,为此安装一个软件包似乎有点繁重,最好自己动手安装。

这是一个可以做到这一点的 shell 函数,其中包含一些智能(但总有改进的空间):

addtopath() {
  local path_to_add=''
  # set var if target is a directory
  [ -d "${1}" ] && path_to_add="${1}"
  # error out if $1 was empty or a bad path was given
  : "${path_to_add:?No valid path provided}"
  # exit early if path already in PATH
  grep -qE "(^|:)${path_to_add}(:|$)" <<< "${PATH}" && return
  # add to end of .profile
  printf '\nPATH=$PATH:%s' "${path_to_add}" >> "${HOME}/.profile"
}

相关内容