[笔记]快乐的Linux命令行《十三》自定义shell命令

35 阅读1分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第14天,点击查看活动详情

前言

经常会好奇shell命令的组成,接下来就利用之前学习的知识带大家学习一下如何自定义Shell命令。

一、自定义命令行


首先想编写自己的命令 必须了解到 :

  • 命令 就是直接执行特定的脚本文件

  • 其次 命令 一般有

    • 系统用户执行的
    • 当前用户执行的

    他们实际就是 脚本文件存放的不同地方而已

所以 只要将你编写的脚本放在特定的位置 然后执行脚本名 就相当于执行命令行


1.1 查看当前PATH变量 命令行存放地址

> echo $PATH
> 
> /usr/local/java/jdk1.8.0_131/bin:/home/azswei/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/azswei/bin

执行以上命令,就能知道PATH变量各个脚本存储路径。

一般当前用户的脚步存放在~/bin (即/home/用户名/bin中),没有的话 则建立bin文件夹 并添加到path

系统管理员脚本存放在 /usr/local/bin

创建bin目录并且当前shell会话再次导入PATH变量:

mkdir ~/bin ##建立bin文件夹
export PATH等于符号$PATH:~/bin

然后再打印PATH环境变量:

> echo $PATH 

看到添加的有~/bin 则成功


1.2 准备脚本

> cd ~/bin #进入当前用户的bin目录
> vi helloworld #建立helloworld 文本文件
#!/bin/bash # #!shebang 使用执行该脚本的解释器名字
# this is a comment 注释
echo 'hello,world!'

按下esc 输入:wq 或者 shift+z+z 保存退出 然后执行


1.3 最后执行命令

> helloworld #脚本文件名字
> hello,world! #运行结果 则成功

然后你的第一个命令行就写完了 是不是很容易

总结

自定义Shell虽然很少会有人自己去定义,但是可以帮助我们理解shell命令的种类以及本质:

  • Shell命令
  • bin程序
  • 别名
  • Shell函数