目录
Linux命令格式
Linux命令分类
如何判断命令的类型——Type命令
内置命令
外部命令
alias命令
命令的执行效率与过程
Linux命令格式
命令格式
完整的命令格式分为三部分:命令、参数、对象
其中命令与参数、参数与参数、参数与对象之间最少要有一个空格做间隔
不过有些情况下命令格式没有参数或对象,不过命令一定是有的
命令:执行的动作(打)
参数:对于动作进行一个定制化(狠狠的打)–为了让命令更好的贴近工作需要
对象:动作的承受方(狠狠的打你)
参数格式
参数分为长格式和短格式
长格式 大部分情况:–+单词 例如:–list 、–all
短格式 大部分情况:-+字母 例如:-l、-a
有些情况下的参数格式是比较特别的:
find 长格式也是一个- , 即 find / -size
ps 三个短格式合并没有-, 即 ps aux
date命令使用的是 + 号
注意:参数格式不是一定确定的,可能会有其它变化,只是说的是大部分
参数合并
长格式与长格式、长格式与短格式不能合并
短格式和短格式之间能够合并,不过只保留一个-号
例如:-a和-l 合并为-al或者-la(大部分情况下不区分参数合并后的位置,但是有些参数合并需区分合并位置)
例如:压缩命令就需要注意参数的位置(tar czvf、tar xzvf 合并参数的位置不可改变)
注意事项
Linux中的命令、参数都严格区分大小写(一般命令为小写,参数为大写)
Linux命令分类
Linux的命令可以分为内置命令、外部命令、通过alias别名执行的命令三大类
别名命令宏观上说也是内置命令和外部命令的一种
如何判断命令的类型——Type命令
使用格式:type 命令
判断依据:如果结果为shell builtin表示该命令为内部命令;结果为文件路径则表示该命令为外部命令;结果为aliased表示该命令为别名命令
内置命令
Linux自带命令,提交内核执行
exit、history属于内置命令
外部命令
当前系统的某文件系统路径下有对应的可执行程序文件;top、reboot、ls等都属于内部命令
系统在哪些路径下寻找外部命令的可执行文件
外部命令的存放路径都在PATH变量中显示,每个路径通过 : 隔开
系统根据PATH变量中存放的路径,从左往服务器托管网右依次在每个路径中寻找外部命令对应的可执行程序;如果在所有的路径中都没有找到该外部命令,则显示该命令不存在的错误提示PATH变量内容——外部命令存放路径
/usr/bin 存放所有用户都可用的应用程序
存放着系统安装自带的一些可执行程序(即系统程序),会随着系统的升级而改变
此目录一般不会做修改,修改可能会影响系统启动等
/usr/local/bin 存放所有用户都可用的第三方软件程序
存放着第三方软件程序(即用户自己安装的应用程序),此目录一般可以做修改
/usr/sbin 存放只有管理员用户才可用的应用程序
存放着系统安装自带的一些可执行程序
/usr/local/sbin 存放只有管理员用户才可用的第三方软件程序
存放着第三方软件程序
alias命令
为什么要使用别名命令
别名命令可以简化命令的输入
可以将多个命令组合成一个别名,简化输入
通过简化命令可以防止误操作
alias介绍
通过alias可以查看linux已有的别名信息(例如查看mv的别名,了解到mv=mv -i)
也可以通过 alias 别名=命令 的方式创建别名命令
通过unalias 别名 来删除别名
例子
alias ls=’ls -al’ 设置ls-al的别名为ls
alias 查看linux已有的别名信息
unalias ls 删除别名ls
注意事项
alias 创建的别名是临时的,如果需要永久保存可以直接编辑/root/.bashrc文件(.bashrc文件相当于Shell的配置文件)
vim /root/.bashrc 编辑文件
source /root/.bashrc 更新文件
命令的执行效率与过程
命令的执行效率
Linux中命令执行的效率(优先级)
1、通过文件命令以及路径的方式输入命令(例如/bin/free)
2、通过alias别名命令的方式执行
3、内部命令
4、外部命令(我们所使用的命令99%都是外部命令)
echo $PATH 外部命令都存放在PATH变量中
Linux环境变量讲解-CSDN博客https://blog.csdn.net/m0_49864110/article/details/128998850?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22128998850%22%2C%22source%22%3A%22m0_49864110%22%7D
命令的执行过程
1、判断用户是否以相对路径或绝对路径的方式输入命令(例如/bin/fr服务器托管网ee),如果是则直接执行
2、检查用户输入的命令是否为别名命令,如果是别名命令则将其对应的真实命令解析出来,然后判断命令是内置命令还是外部命令;如果是内置命令会直接提交给内核执行;如果是外部命令,则系统会根据配置路径来寻找命令的可执行文件,将其调入内存提交内核执行
3、如果用户输入的命令不是别名命令,则直接判断命令是内置命令还是外部命令,然后执行
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net