PS:程序是一串特定的指令序列去执行一定的特殊的任务
在用户和内核之间充当“翻译官”
*
用户登录Linux系统时,自动加载一个Shell程序
*
Bash是Linux系统中默认使用的Shell程序(Bash是一种程序)
文件位于bin/bash
[root@localhost ~]/# echo $SHELL 查看shell默认什么程序
[root@localhost ~]/# cat /etc/shells 查看系统哪些程序支持shell
[root@localhost ~]/# sh 切换到其他程序
内部命令 | 外部命令 |
---|---|
集成于Shell解释器程序内部的一些特殊指令,也称为内建指令 | Linux系统中能够完成特定功能的脚本文件或二进制程序 |
属于Shell的一部分 | 属于Shell解释器程序之外的命令 |
没有单独对应的系统文件 | 每个外部命令对应了系统中的一个文件 |
自动载入内存,可以直接使用 | 必须知道其对应的位置,由shell加载后才能执行 |
内部命令,如:
Echo命令是打印的意思
即是内部命令,又是外部命令(怕有些环境中没有这些命令)
程序存放在目录下,例如:
用type来判别,内部命令只有显示是shell的内嵌,例如:
外部命令,有程序所在的路径信息
命令执行顺序:先找hash缓存,再找内部命令,再找外部命令
例如:ls命令在缓存中有这条,我将这条命令从缓存中删掉后,执行ls这个程序的时候就会找内部命令,因为ls属于外部命令,所以内部命令找不到,最终在外部命令找到ls程序,并执行。
是整条命令中最关键的一部分
唯一确定一条命令
短格式选项:使用“-”符号引导, 通常引导一个字母
长格式选项:使用“–”符号引导。通常引导一个完整的单词
命令字的处理对象
可以是文件名、目录(路径)或用户名等内容
个数可以是0到多个,例如
有些命令仅支持文件,如vim,有些命令支支持文件夹
*
“ ;”可以用来隔开命令,执行多个命令,例如
查看shell内部命令的帮助信息,例如:查看echo命令怎么用
适用于大多数LINUX外部命令,例如:查看ls命令怎么用
显示用户当前所在的工作目录位置,示例:
/Bin是个链接文件,真实地址是/usr/bin
绝对路径:绝对路径是指目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径。
*
相对路径:相对路径就是指由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系。
*
/ 唯一入口,例如:
/etc/ 绝对路径
/opt/ 绝对路径
表现形式 | 说明 | 实例 |
---|---|---|
直接使用目录名或文件名 | 表示当前工作目录的子目录、文件的位置 | grub.conf |
以一个点号“.”开头 | 表示当前的工作目录作为起点 | ./grub.conf |
以两个点号“…”开头 | 表示以当前目录的上一级目录(父目录作为起点) | …/vmlinuz |
以“~用户名”形式开头 | 表示以指定的宿主目录作为起点 | ~teacher |
举例:
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/m0_51160032/article/details/120028010
内容来源于网络,如有侵权,请联系作者删除!