使用:Ubuntu 20.04.1 LTS 编辑器:Nano
我正在为大学编写一个小型 shell 脚本,它需要有一个包含一系列可供用户使用的选项的菜单。选项之一是“根据用户输入将目录添加到手动路径”。我认为根据给我的材料我得到了正确的答案,但它不起作用?
manpath 的当前位置是“/usr/bin/manpath”
到目前为止,这是我的代码:
two() {
read -p"Please enter a directory to be added to the MANPATH: " dir
manpath=/usr/share/man$dir:$manpath; export manpath
#TO SHOW IT HAS WORKED
which manpath
}
任何帮助将不胜感激。
答案1
manpath
是一个命令man
(在没有任何标志的情况下执行)只是显示查找其页面的路径。换句话说,您不能向命令添加路径manpath
。
下面说明了如何将路径(在本例中为目录/foobar
)添加到已存在的路径(在 Debian 10 上)。
# Original paths
manpath
/usr/local/man:/usr/local/share/man:/usr/share/man
# Adding a path
export MANPATH=$(manpath):/foobar
# Result
manpath
manpath: warning: $MANPATH set, ignoring /etc/manpath.config
/usr/local/man:/usr/local/share/man:/usr/share/man:/foobar
这是否让事情变得更清楚了一些?
请运行:man manpath
.您会在哪里找到:
DESCRIPTION
If $MANPATH is set, manpath will simply display its contents and issue a warning.