linux安装软件到自定义路径时,新安装的命令需要带上路径才可以执行,不能像系统自带命令那样可以直接使用。

这个时候可以通过修改环境变量PATH和MANPATH,来实现像系统命令一样使用新安装的命令并能查看man。

我们以php-fpm安装为例,安装完成之后,php的安装目录是/usr/local/php

php的可执行文被件安装到
/usr/local/php/bin
php的man文件被安装到
/usr/local/php/php/man/man1/
/usr/local/php/php/man/man8/

1.如果不修改环境变量就直接在命令行使用php会提示

-bash: php: command not found

执行

export PATH=/usr/local/php/bin:$PATH

这样就可以直接使用php命令了

2. 使用man php,会提示

No manual entry for php

加入man路径到环境变量MANPATH,注意不用具体到man1和man8,加入到它们的父目录就可以了。

export MANPATH=/usr/local/php/php/man:$MANPATH

就可以找到man了

但是该配置只对当前登录用户当次有效,要想对所有用户永久有效需要修改

vi /etc/profile

在文件结尾添加

export PATH=/usr/local/php/bin:$PATH
export MANPATH=/usr/local/php/php/man:$MANPATH

修改完成可以使用manpath命令查看修改后的路径

/usr/local/php/php/man:/usr/kerberos/man:/usr/local/share/man:/usr/share/man/en:/usr/share/man

--------------------华丽的分隔------------------------------------------
man常用知识

man的配置文件 /etc/man.config

查找你看到的某个命令的man内容是在那个man文件中
# man -w ls
/usr/share/man/man1/ls.1.gz
显示所有的
# man -aw ls
/usr/share/man/man1/ls.1.gz
/usr/share/man/man1p/ls.1p.gz

命令manpath显示当前的man的搜索的path
# manpath
/usr/local/php/php/man:/usr/kerberos/man:/usr/local/share/man:/usr/share/man/en:/usr/share/man

一个说明man的mapping的例子
# manpath
/usr/kerberos/man:/usr/local/share/man:/usr/share/man/en:/usr/share/man..........................................................

# echo “export PATH=$PATH:/opt/mpich-1.2.7p1/bin” >>/etc/profile
# source /etc/profile
# manpath
/usr/kerberos/man:/usr/local/share/man:/usr/share/man/en:/usr/share/man:/opt/mpich-1.2.7p1/man

就是说,如果把一个命令的路径加入到PATH中,且这个路径的父目录中有man这个目录,那么会自动的加入到manpath中,没有必要再手工的将manpath加入到 /etc/profile或者当前的.bash_profile中

linux增加自定义path和manpath的更多相关文章

  1. gnome3增加自定义程序快捷方式

    gnome3增加自定义程序快捷方式   1. 安装alacarte   在命令行输入下列命令安装alacarte程序   yum -y install alacarte   安装完毕后,在命令行输入下 ...

  2. [ubuntu][deepin]系统增加自定义开机启动项

    [ubuntu][deepin]系统增加自定义开机启动项 进行配置 cd /etc/init.d/ ls vim myScript nginx实例 #! /bin/sh # chkconfig: # ...

  3. [转]通过继承ConfigurationSection,在web.config中增加自定义配置

    本文转自:http://www.blue1000.com/bkhtml/2008-02/55810.htm 前几天写了一篇使用IConfigurationSectionHandler在web.conf ...

  4. Linux下修改PATH的方法

    Linux下修改PATH的方法 1.直接在命令行里敲 PATH=$PATH:/path1:/path2:/pathN用户登出之后PATH恢复原样. 只是临时起作用. 2.修改~目录下bash_prof ...

  5. 【原创】Linux 增加系统调用

    Linux 增加系统调用大致步骤: 1.下载好内核文件,在内核源文件中添加好自己的调用函数. 2.编译内核 3.验证. 一.在内核源文件中增加自己的函数   首先将内核文件移至/usr/src/下并解 ...

  6. linux shell自定义函数(定义、返回值、变量作用域)介绍

    http://www.jb51.net/article/33899.htm linux shell自定义函数(定义.返回值.变量作用域)介绍 linux shell 可以用户定义函数,然后在shell ...

  7. VMware linux 增加根目录空间 (使用图形分区工具gparted LiveCd)

    写这篇文章的原因: 最近要给服务器Centos上的ruby版本升级,由于是第一次升级,不敢直接在服务器上操作. 所以在我的winxp上装了Vmware ,又在Vmware中装了Centos5.2. 用 ...

  8. Linux增加LV(逻辑卷)容量

    Linux增加LV(逻辑卷)容量 2017-09-29-17:34:13 个人原创博客,转载请注明出处. 查看逻辑卷的相关命令: lvs vgs 命令: [root@arch ~]# vgs VG # ...

  9. Linux增加开放端口号

    Linux增加开放端口号 : 方法一:命令行方式 1. 开放端口命令: /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT   2.保存:/etc/ ...

随机推荐

  1. 一套简单可依赖的Javascript库

    还是[百度]的产品——Tangram不是我偏心,百度不是我亲戚这东西看上去确实不错 Tangram是一套简单可依赖的Javascript库,主要分为Base和Component两部分.Base提供了开 ...

  2. jeecms内容显示条数

    1.按照1.2.3.4.5顺序显示 <div class="index-news"> [@cms_channel id='1'] <h2><span& ...

  3. 判断一个数据是否存在于一个表中,Oracle中写自定义函数

    create or replace function isExist(data in DataTypes) --DataTypes 为表中该数据的类型return Numberisv_flag num ...

  4. POJ1141 Brackets Sequence

    Description Let us define a regular brackets sequence in the following way: 1. Empty sequence is a r ...

  5. Erlang第三课 ---- 创建和使用module

    ----------------小技巧----------------------------- 因为这一课开始,我们要使用Erlang文件操作,所以,我们期待启动shell的时候,当前目录最好是是我 ...

  6. knockoutjs + easyui.treegrid 可编辑的自定义绑定插件

    http://blog.csdn.net/maddemon/article/details/16846183 目前仅支持URL的CRUD.不需要的话可以却掉相关代码,把treegrid的data直接赋 ...

  7. android 事件处理概念簇

    1)事件传递函数 2)事件相关: 事件.事件源.事件监听器.MotionEvent 3)坐标系.定位.路由: 4)Window activity view viewGroup

  8. TP中二维数组的遍历输出

    例子分析 <volist name="list" id="vo"> <volist name="vo['sub']" id ...

  9. sencha touch list(列表)、 store(数据源)、model(模型)详解

    //求职 Ext.define('app.model.Staff', { extend: 'Ext.data.Model', config: { fields: [{ name: 'id', type ...

  10. servlet的一个web容器中有且只有一个servlet实例或有多个实例的理解1

    servlet的一个web容器中有且只有一个servlet实例或有多个实例的理解 (2013-06-19 19:30:40) 转载▼     servlet的非线程安全,action的线程安全 对提交 ...