在Linux执行文件时,若不加上文件的路径,则默认依据PATH环境变量中指定的路径依次寻找。为了方便编译程序或运行shell,可自己添加一些路径。
(1)单独的对该console有效的方法是:
[color=#ff6600]export PATH=$PATH:/sbin[/color]
(2)对单个用户有效:在该用户对~/.bashrc文件中加入
[color=#ff6600]$ vi ~/.bashrc[/color]加入一行:
export PATH=${PATH}:/sbin:/usr/sbin:/usr/local/sbin[color=#330099]:.(加入当前目录".",以后运行时就不必$./****,直接$****)[/color]
(3)对所有用户有效:
$[color=#ff6600] sudo vi /etc/profile[/color]在/etc/profile.d中创建一个新对可执行文件(需root权限)
在该文件中加入[color=#ff6600]export PATH=$PATH:/sbin[/color]如果想要执行/sbin目录下对命令,在设置了PATH之后只要直接键入命令即可
保存退出,
对于(2),运行:
[color=#ff6600]$ source ~/.bashrc[/color]
对于(3),运行:
[color=#ff6600]$sudo source /etc/profile[/color]
查看目前的PATH环境变量:
[color=#ff6600]$echo $PATH[/color]
[color=#006600]/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games:.[/color]
[size=14][color=#66ff33]一般情况下:
${PATH} 跟 $PATH 没区别
不过当这样用时:
${PATH}string 跟 $PATHstring 就有区别了。
前者把 PATH 当一个变量,后者把 PATHstring 当变量。[/color][/size]
[color=#6600ff]编译时,$gcc -Idir:设置搜索头文件的目录[/color]
例如,运行APUE的例程时,用上述方法将~/.bashrc中添加"export APUE=/home/***/apue",及"export PATH=${PATH}:."后:
[color=#ff6600]$gcc xxx.c -I$APUE/include $APUE/lib/libapue.a -o xxx
$xxx[/color]