一、命令可執行文件所在目錄##
shell命令可執行文件所在目錄是保存在環境變量PATH中的,終端輸入如下命令查看 PATH 環境變量的內容:
$ echo $PATH
我的linux輸出如下:
/opt/ros/indigo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
二、自定義shell命令##
在 /home/hj(注:hj為用戶目錄)目錄創建一個 mybin 目錄,並將上述 hello.sh 和 helloworld 文件移動到其中:
$ mkdir mybin
$ cd mybin
創建一個 Shell 腳本###
$ gedit hello.sh
添加如下內容,保存並退出:
#!/bin/bash
echo "hello shell!"
exit 0
賦予權限
$ chmod 777 hello_shell.sh
創建可執行文件###
$ gedit helloworld.c
添加如下內容,保存並退出:
#include <stdio.h>
int main()
{
printf("hello world!\n");
return 0;
}
使用 gcc 生成可執行文件:
$ gcc helloworld.c -o hellowold
在環境變量PATH中添加命令可執行文件所在目錄###
這里有三種不同方式
- 1、直接在命令行中設置PATH
PATH=$PATH:/home/hj/mybin
使用這種方法,只對當前會話有效,也就是說每當登出或注銷系統以后,PATH設置就會失效。
- 2、在profile中設置PATH
$ gedit /etc/profile
找到export行,在下面新增加一行,內容為:\(export PATH=\)PATH:/home/hj/mybin$。
編輯/etc/profile后PATH的修改不會立馬生效,如果需要立即生效的話,可以執行:
$ source profile
或者
# . profile
這里的.就是source。
注:這里的/etc/profile文件是每個用戶登錄時都會運行的環境變量設置,所以對任何用戶都生效。
- 3、在當前用戶目錄下的.bashrc中設置PATH
$ gedit .bashrc
添加保存:
$ export PATH=$PATH:/home/hj/mybin。
后鍵入命令
$ source .bashrc
讓修改生效。
注:.bashrc是當前用戶登錄時運行的環境變量設置,所以這種方法只對當前用戶起作用的,其他用戶該修改無效。
三、運行自定義命令##
在終端輸入
$ hello.sh
與
$ helloworld
輸出結果如下: