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. WPF学习(三)--Menu、TabControl和DataGrid控件介绍

    Menu Menu提供了菜单栏方式的多级菜单的管理和操作: 这里对Menu的样式不做任何的定制和管理 下面来对Menu进行测试: 将Menu添加到页面中 运行后,效果如下: 这里没有考虑界面效果和样式 ...

  2. IntellJ IDEA 所有快捷键

    登录下面网站. http://www.jetbrains.com/idea/documentation/ 下载Keymap for Windows/Linux 后面的PDF文档.

  3. Hibernate-org.hibernate.QueryException: could not resolve property: code of:

    查询的时候有个属性跟表里的字段不符合,没有完全匹配上.

  4. Java编程思想学习(三) 初始化与清理

    1. 每个重载的方法都必须有独一无二的参数类型列表.(参数顺序的不同也足以区分两个方法,但不建议这样做,会使代码难以维护.) 2. 方法重载时,如果可以重载的方法间只是参数类型不同,传入的数据类型(实 ...

  5. eclipse中python文本字体大小设置

    eclipse中python脚本用默认的字体和大小,注释是中文的也看不清楚,改一下字体吧 windows-preferences-python-editor-colors and fonts 其实上一 ...

  6. Java中各种(类、方法、属性)访问修饰符与修饰符的说明

    类: 访问修饰符 修饰符 class 类名称 extends 父类名称 implement 接口名称 (访问修饰符与修饰符的位置可以互换) 访问修饰符 名称 说明 备注 public 可以被本项目的所 ...

  7. linux学习笔记一----------文件相关操作

    一.目录结构 二.文件管理操作命令(有关文件夹操作,使用Tab键自动补全文件名(如果多个默认第一个)) 1.ls 查看目录信息:ls -l 查看目录详细信息(等价于ll 某些系统不支持) 2.pwd ...

  8. Java多线程基础(一)

    一.基本概念 线程状态图包括五种状态 1.新建状态(New):线程对象被创建后,就进入新建状态.例如,Thread thread=new Thread(); 2.就绪状态(Runnable):也被称为 ...

  9. Linux创建线程

    #include"stdio.h" #include"pthread.h" #include"unistd.h" ; void *creat ...

  10. 新浪微博客户端(22)-创建微博Cell

    DJStatusCell.h #import <UIKit/UIKit.h> @class DJStatusCellFrame; @interface DJStatusCell : UIT ...