shell是Linux系统中的特殊程序,是介于用户和内核之间的一种翻译机制,通过接收用户的命令,然后将命令翻译成二进制语言给内核,然后内核通过系统对计算机硬件进行调用,在用户登录Linux系统的时候,会自动加载一个shell程序,Bash是Linux系统中默认的shell程序
Linux命令的分类:内部命令和外部命令
内部和外部的命令是有区别的:
内部命令是在shell解释器程序内部的指令,没收有单独的系统文件的,而且是自动载入内存可以直接使用;
外部命令是在Linux系统里完成一些特定的功能的脚本或者是二进制程序,不属于shell内部的命令,而且灭一个命令都有对应的系统文件,我峨嵋你必须要知道其对应的文件位置,通过shell加载才能执行
比如:/bin ; /usr/bin ; /usr/local/bin
在系统中我们需要通过命令来进行操作,那么有命令就要有命令的格式
命令行的格式:命令字 【选项】 【参数】
命令字是整个命令关键部分,是唯一的确定的命令
选项分为短格式和长格式选项,短格式使用“—”来表示,后面是字母,多个单字 符选项可以组合在一起使用 长格式用“— —”来表示,后面是单词
参数就是命令要处理的对象,它可以是文件名、目录或者用户名等内容,他的个数可以零到多个
编辑Linux命令的辅助操作
1、Tab键:自动补齐
2、反斜杠 \ :强制换行
3、CTRL+U:清空至行尾
4、CTRL+K:清空至行首(命令符光标要在要清除的前一位,光标里面的会被清除)
5、CTRL+L:清屏
6、CTRL+C:取消本次命令
7、CTRL+a:切换至行首
8、CTRL+e:切换至尾
我们获得命令帮助的方法有很多:内部命令help,外部命令–help,使用man命令阅读手册,使用百度查找
其中man命令查找方式:上下(回车键)滚动一行文本;使用pageup、pagedown(空格)翻页;按Q/q退出阅读模式;/键查找内容,n向下查找,N向上查找
-cd 切换工作目录
cd ~和cd 不指定目标位置,切换到宿主模式
cd- 切换到上一次cd命令执行前的目录
绝对路径:以 / 或者根目录为起点的路径;
相对路径:以当前所在目录为起点的路径
- ls 列表中显示目录内容
常用的选项有:-l -a -A -d -h -R --color
结合通配符:
?代表任意字符,有且只有一个字符
*代表任意数个字符,可以是0或者1个或者多个
【】可以匹配字符组中的任意字符
ls-l :以长格式显示文件和目录的列表,包括权限,大小最后更新时间
ls-a :显示所有子目录和文件,包括名称以点号 . 开头的隐藏目录和文件
ls -A:与-a类似,但是隐藏文件不会显示
ls -d:显示目录本身的属性,不显示目录中内容
–color:不同颜色区分不通过文件
注意:
d 代表目录;
-代表一般文件;
l 代表软连接
第一个rwx代表这个文件所有者所拥有的权限,是第一个root
第二个rwx代表所属组,组成员所拥有的权限,第二个root,组名
第三个rwx代表其他用户所拥有的权限,赋予时注意,防止获取关键信息和破坏系统
r代表文件可读
w代表文件可写入可修改
x代表文件可执行
有x权限文件会变成绿色
-alias:设置别名
简化常用的,比较长的命令
-du: 统计目录及空间空间占用情况
du 【选项】 【文件或者目录】
常用选项:-a、 -h、 -s 在du后面什么都不加也是能够使用的
du -a 统计磁盘空间占用的所以普文件,不仅仅只统计统计目录
–max-depth=n 统计所有小于等于第n层的目录的总大小
这个命令在日常工作中会经常用到,排查磁盘内存问题
-mkdir :创建新的空目录
mkdir 【选项】 目录位置及名称
-touch: 创建空文件
-ln:创建链接文件
为文件或者目录建立链接文件,和Windows的快捷方式相同
链接文件类型可以分为:软链接,硬链接
软连接的创建
ln 【-s】 源文件/目录 。。。链接文件或目标位置
-cp :复制文件或目录
将需要复制的文件或目录(源)重建一份,并保存新的文件或目录
cp 【选项】 源文件目录 目标文件目录
常用选项:-f、 -i、 -p、 -r
-i:覆盖目标提醒用户确认
-f:覆盖目标不需要用户确认,强制复制
-p:保留原来的属性的写权限,属主,时间标记不变
-r:复制必选项,递归复制所有文件及子目录
-rm:删除文件或者目录
rm 【选项】 要删除的文件目录
-which查找命令文件存放目录
搜索范围由环境变量PATH决定
which 命令 |程序名 (默认找到第一个目标不再继续查找)
find查找文件目录
-name:目标文件查找,允许使用通配符
-size:按大小查找,“+”代表超过;“—”代表小于,单位包括kB;MB;GB
-type:根据文件类型,通常和exec一起使用
格式为 find ./ -type f -exec ls -l {} ;
**{}**代表find找到的文件