前言

命令本身其实就是可执行文件。但是 与普通的可执行文件的不同之处在于,命令的可执行文件必须在PATH变量中。(这个后面会介绍)
(2)学习这一章时候,需要先学习 Linux入门操作指令介绍(配合Windows理解)和 Linux_vim编辑器入门级详细教程
(3)这一章会 先介绍环境变量的修改,然后 再编写一个自己的命令。
(4)相关视频教程: Linux环境变量讲解Linux编写第一个自己的命令

什么是环境变量

多用户的操作系统( 比如有普通用户和root用户), 所以 每一个用户也都有自己的环境变量。 举例: 比如我们之前学习的命令不管在哪个路径下输入, 都是可以执行成功的( 比如ls命令,无论是在home路径下还是Desktop路径下都可以执行), 因为系统已经把命令的搜索路径提前设置好了。
注意:概念部分看看不懂没关系,留个印象。
(2) 常用变量 PATH 决定了要去哪个路径下去寻找我们的程序或者命令, 在以后的开发过程中, 我们要经常修改这个变量。

echo指令

(1)功能:将输入的参数打印出来
(2)如果我们写入 echo $PATH即可将PATH变量的参数打印出来。(也就是说,指令的可执行文件存放在这些路径中)




Linux-编写一个自己的命令_linux


修改环境变量

临时修改

export 变量=新增的变量值: $变量
例如现在我想将桌面设置为新曾环境变量,输入: export PATH=/home/book/Desktop/:$PATH
(2)临时改变表示如果我们现在关闭终端,再重新打开终端,新增的变量将会消失。


Linux-编写一个自己的命令_环境变量_02


Linux-编写一个自己的命令_linux_03


永久修改

export PATH=/home/book/Desktop/:$PATH--->:wq保存退出--->source .bashrc
(2)如果想取消修改,vi .bashrc--->删除 export PATH=/home/book/Desktop/:$PATH--->:wq保存退出--->source .bashrc--->关闭终端然后重新打开


Linux-编写一个自己的命令_linux_04


Linux-编写一个自己的命令_linux_05


每一个用户也都有自己的环境变量

上面说了,每一个用户都有自己的环境变量。此时我们在book用户下更改了环境变量,在root环境下就没有。


Linux-编写一个自己的命令_环境变量_06


在Linux中编写第一个自己的命令

编写一个可执行程序

首先用vim编辑器写一个.c文件,然后用gcc编译


Linux-编写一个自己的命令_环境变量_07


Linux-编写一个自己的命令_环境变量_08


命令与普通的可执行文件的区别

上面说了,Linux中的命令其实就是可执行文件。只不过这些命令与普通的可执行文件的区别在于,命令可以在任何目录下执行,而普通的可执行文件只能在当前目录下执行。


Linux-编写一个自己的命令_linux_09


将普通可执行文件变成命令

方法一

变为命令

首先我们需要查看PATH中有哪些变量--->然后将普通的可执行文件复制到PATH中的一个路径里面


Linux-编写一个自己的命令_Powered by 金山文档_10


删除命令

这个时候,可能有人又不想要这个命令了。只需要找到这个可执行文件存放的目录,然后将其删除即可。


Linux-编写一个自己的命令_环境变量_11


方法二

我们可以将存放普通可执行文件的路径,加入到PATH变量中。因为是用于演示,所以我使用临时将当前目录加入PATH变量中。


Linux-编写一个自己的命令_Desktop_12