为进阶Linux大佬打牢地基
一、Linux命令基础
1、Shell
1-1、Shell
- Linux系统中运行的一种特殊程序
- 在用户和内核之间充当“翻译官”
- 用户登录Linux系统时,自动加载一个Shell程序
- Bash是Linux系统中默认使用的Shell程序
- 文件位于/bin/bash
1-2、Shell的作用
- 接收用户输入的指令
- 解释命令
- 传递给系统内核执行
2、Linux命令分类
2-1、分类
- 内部命令
- 外部命令
2-2、内部命令与外部命令的区别
内部命令 | 外部命令 |
---|---|
集成于Shell解释器程序内部的一些特殊指令,也称为内建(Builtin)指令 | Linux系统中能够完成特定功能的脚本文件或二进制程序 |
属于Shell的一部分 | 属于Shell解释器程序之外的命令 |
没有单独对应的系统文件 | 每个外部命令对应了系统中的一个文件 |
自动载入内存,可以直接使用 | 必须知道其对应的文件位置,由Shell加载后才能执行 /bin,/usr/bin,/usr/local/bin等 |
2-3、查看内部命令
- help
- enable
- type 命令
2-4、禁用内部命令及重新启用内部命令
- 禁用内部命令
- enable -n 命令
- 重新启用内部命令
- enable 命令
3、命令的格式
3-1、通用格式
- 命令字
- 整条命令中最关键的一部分
- 唯一确定一条命令
- 选项
- 短格式选项:使用“-”符号引导
- 长格式选项:使用“- -”符号引导
- 参数
- 命令字的处理对象
- 可以使文件名、目录(路径)名或用户名等内容
- 个数可以使零到多个
3-2、编辑Linux命令行的辅助操作
- Tab键:自动补全
- 反斜杠“\”:强制换行
- Ctrl +U组合键:清空至行首
- Ctrl+ K组合键:清空至行尾
- Ctrl+ L组合键:清屏
- Ctrl+ C组合键:取消本次命令编辑
- Ctrl+ a组合键:切换到行首
- Ctrl+ e组合键:切换到行尾
二、获得命令帮助的方法
-
内部命令help
- 查看Shell内部命令的帮助信息
-
命令 - - help
- 适用于大多数Linux外部命令
-
使用man命令阅读手册
- 使用“↑"、“↓” (ENTER)方向键滚动一行文本
- 使用Page Up和Page Down (空格) 键翻页
- 按Q或q键退出阅读环境
- 按"/"键查找内容, n键向下查找,,N键向上查找
三、目录及文件基本操作
1、查看当前工作目录:pwd
- 显示用户当前所在的工作目录位置
- pwd
示例:
[root@localhost ~]# pwd
/root
2、切换工作目录:cd
2-1、将用户的工作目录更改到其他位置
格式 | 说明 |
---|---|
cd 目标位置 | 切换到目标位置 |
cd ~ | 若不指定目标位置,切换到当前目录的宿主目录 |
cd | 若不指定目标位置,切换到当前目录的宿主目录 |
cd - | 切换到上一次执行 cd 命令之前所在的目录 |
2-2、绝对路径
- 以根号“/”为起点的路径称为绝对路径
- 以根号“/”为起点的目录称为根目录
2-3、相对路径
- 以当前位置为起点的路径称为绝对路径
表现形式 | 说明 | 示例 |
---|---|---|
直接使用目录名或文件名 | 表示当前工作目录中的子目录、文件的位置 | grub.conf |
以一个点号"."开头 | 表示以当前的工作目录作为起点. | ./grub.conf |
以两个点号"…"开头 | 表示以当前目录的上一级目录(父目录)作为起点 | …/vmlinuz |
以"~用户名"形式开头 | 表示以指定用户的宿主目录作为起点 | ~teacher |
以"~"形式开头 | 表示以当前用户的宿主目录作为起点 | ~ |
3、列表显示目录内容:ls
3-1、显示目录内容
- 显示目录中的内容,包含子目录和文件相关属性信息
3-2、常用选项
- - l
以长格式(Long)显示文件和目录的列表,包括权限、大小、最后更新时间等详细信息。ll 命令与ls-l功能相同 - - a
显示所有(All)子目录和文件的信息,包括名称以点号"."开头的隐藏目录和隐藏文件。 - - A
与 -a 选项的作用基本类似,但有两个特殊隐藏目录不会显示,即表示当前目录的".“和表示父目录的”…" - - d
显示目录(Directory)本身的属性,而不是显示目录中的内容。 - - h
以更人性化(Human)的方式显示目录或文件的大小,默认的大小单位为字节(B) ,使用 -h 选项后将显示为KB、MB等单位。此选项需要结合 -l 选项一起使用。 - - R
以递归(Recursive)的方式显示指定目录及其子目录中的所有内容 - - - color
在字符模式中以颜色区分不同的文件。默认已开启。
通常情况下,深蓝色表示目录,,白色表示一般文件,绿色表示可执行的文件,黄色表示设备文件,红色表示压缩文件,天蓝色表示软连接文件 - - i
显示文件和目录的inode号
3-3、ls -l 命令查看目录得到的7个字段的列表
- 第一字段:文件属性字
第一个字符代表文件的类型:- “-”表示该文件是一个普通文件
- “d”表示该文件是一个目录
- “l”表示该文件是一个软连接文件,类似于windows下的快捷方式
第一字符的后面9个字母表示该文件或目录的权限位:
-
r表示读(查看、下载)
-
w表示写(添加、更改、删除、上传)
-
x表示执行(运行文件、切换目录)
-
前三个表示文件拥有者的权限
-
中间三个表示文件所属组拥有的权限
-
最后三个表示其他用户的权限
-
第二字段:文件硬链接数
- 如果 一个文件不是目录,此时这一字段表示这个文件所具有的硬链接数
- 如果是一个目录,则第二字段表示该目录所含子目录个数
- 如果新建一个空目录,这个目录的第二字段就是2,表示该目录下有两个子目录
-
第三字段:文件/目录拥有者
-
第四字段:文件/目录所在的组
-
第五字段:文件所占用的空间(默认以字节为单位)
- 如果是一个目录,则表示该目录的大小,而不是目录及它下面文件的总大小。
Linux系统中一切皆文件,因此目录也是一种文件。
- 如果是一个目录,则表示该目录的大小,而不是目录及它下面文件的总大小。
-
第六字段:文件/目录最近访问或修改时间
-
第七字段:文件名
- 如果是一个符号链接(软链接文件) ,那么会有一个“->”箭头符号,后面跟一个它指向的文件
- 如果是一个符号链接(软链接文件) ,那么会有一个“->”箭头符号,后面跟一个它指向的文件
3-4、ls 结合通配符
- “?”
代表任意一个字符,有且只有一个 - “*”
代表任意数个字符,可以使0个或者1个或者多个 - “[]”
表示可以匹配字符组中的任意一个字符
4、设置别名:alias
- 通过别名机制简化常用的、比较长的命令
alias 命令别名=‘命令’ (‘=’两边不能有空格)
示例
[root@localhost ~]# alias myls='ls -alh'
- 取消别名
示例
[root@localhost ~]# unalias myls
总结
Linux基础知识打牢,进阶向上才更容易,以后遇到的问题才能迎刃而解。