Linux核心目录结构-命令-服务器-vim编辑器-day02
- 一、Linux核心目录结构
-
- 1.1.Linux核心目录(根下)
- 1.2.路径表示形式
- 二、Linux核心命令详解
-
- 2.1.cd与pwd
- 2.2.mkdir创建目录
- 2.3.touch创建文件
- 2.4.ls 查看目录内容
- 2.5.mv move移动、改名
- 2.6.cp copy 复制文件或目录【操作前备份】:warning:
- 2.7.rm remove移除,删除文件或目录:warning:
- 2.8.echo 输出信息到屏幕
- 2.9.cat 显示文件内容
- 三、Linux环境的初步优化【centos7.9】
-
- 3.1.检查虚拟机是否联网--虚拟机是否可以访问外部网络
- 3.2.配置阿里云 centos镜像yum源(安装软件的软件仓库)
- 3.3.安装Linux常用工具
- 3.4.软件安装完成后并检查后拍摄快照
- 3.5.vi-vim编辑器详解
-
- 3.5.1.vi/vim区别
- 3.5.2.vi/vim基本使用
-
- 3.5.2.1.打开文件(不存在也OK)
- 3.5.2.2.进入编辑模式
- 3.5.2.3.保存并退出
- 3.5.2.4.检查
- 3.5.3.vim的模式转换
- 3.5.4.==vim快捷键== :star::star::star::star::star:
- 3.6.vim批量操作
- 3.7.vim多窗口编辑多文件功能
- 3.8.快捷键小结
- 3.9.故障案例
- 四.服务器分类
-
- 4.1.服务器分类
-
- 4.1.1.物理服务器
- 4.1.2.云服务器
- 4.2.IDC机房和机柜知识【了解】
-
- 4.2.1.IDC机房
- 4.2.2.机柜和服务器
- 4.2.3.IDC机房服务器上架流程
-
- 4.2.3.1.购买服务器
- 4.2.3.2.上架服务器
- 4.2.3.3.和IDC约定上架日期
- 4.2.3.4.去IDC机房需要准备的工具
- 4.2.3.5.去机房配置服务器细节
- 五、目录结构深入--文件--了解
-
- 5.1./etc/下面
-
- 5.1.1.修改主机名:star::star::star::star::star:
- 5.1.2.网卡配置文件
- 5.1.3./etc/rc.local 开机自启动配置文件【:warning:谨慎使用】
- 5.1.4./etc/motd issue
- 5.2./var/下面
- 5.3./proc/下面
-
- 5.3.1.cpu信息
- 5.3.2.内存信息--熟悉
- 六、日志查询4剑客 : cat/head/tail/more/less
-
- 6.1.概述
- 6.2.日志查询命令使用
-
- 6.2.1.head 显示文件的头几行,默认是前10行
- 6.2.2.tail 显示文件的后几行,默认是后10行
- 6.2.3.less 按页显示文件内容
- 6.2.4.more 按页显示文件内容,到达最后一行就退出
- 6.2.5.小结
- 七、wc统计
-
- 7.1.统计/etc/services文件有多少行
- 7.2.案例:统计系统用户登录错误次数Failed password
- 7.3.管道符号 |
- 八、查询命令位置
-
- 8.1.which
- 8.2.whereis
- 九、文件比较命令【服务配置对比新旧文件】
-
- 9.1.diff
- 9.2.vimdiff
- 十、排序去重组合:star::star::star::star::star:
-
- 10.1.sort排序-n,-r,-k,-t:star::star::star::star::star:
-
- 10.1.1.基数数字排序:对文件的数字进行排序:star::star::star::star::star:
- 10.1.2.基数数字排序:对文件的数字进行==逆序排序==
- 10.1.3.对文件的某一列进行排序:star::star::star::star::star:
- 10.1.4.企业面试题 : ll /etc/ 取出大小最大的前五个
- 10.1.5.指定分隔符进行排序:star:
- 10.1.6.通过sort对==多列==进行同时==排序==
- 10.1.7.以.点为分隔符对第3列和第4列排序:star::star::star::star::star:
- 10.2.uniq:去重(去掉重复的留下唯一的)
- 10.3.企业实战案例--日志分析:star::star:
- 10.4.小结
- 十一、日期组合
-
- 11.1.date
- 11.2.ntpdate 同步时间的命令
- 11.3.修改时区--熟悉
- 11.4.应用实战
- 11.5.小结
- 十、今日总结
- 十、007
- endl
一、Linux核心目录结构
1.1.Linux核心目录(根下)
- 目录(windows叫文件夹),一般是用来分类存放文件
- / 根,斜线. \反斜线.
| 根下的核心目录 | 说明 |
|---|---|
| ⭐️ /etc/ | 系统服务配置文件的目录,存放系统,服务,命令的配置 |
| ⭐️ /home/ | 普通用户家目录,比如dange用户 /home/dange/ |
| ⭐️ /root | 皇宫,root用户家目录 |
| /dev/ | device 设备文件目录,硬盘,光盘… |
| ⭐️ /tmp/ | 临时文件,临时问价存放目录 |
| /proc/ | 系统服务,进程信息,类似于汽车的仪表盘 |
- /bin:存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里;
- /etc:存放系统管理和配置文件;
- /home:存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示;
- /usr:用于存放系统应用程序/opt:额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里;
- /proc:虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息;
- /root:超级用户(系统管理员)的主目录(特权阶级o);
- /sbin: 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等;
- /dev:用于存放设备文件;
- /mnt:系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统;
- /boot:存放用于系统引导时使用的各种文件;
- **/lib **:存放着和系统运行相关的库文件 ;
- /tmp:用于存放各种临时文件,是公用的临时文件存储点;
- /var:用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等;
- /lost+found:这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里。
1.2.路径表示形式
- 绝对路径
- 相对路径
二、Linux核心命令详解
2.1.cd与pwd
| 命令 | 说明 |
|---|---|
| cd | change directory 进入到某个目录 |
| pwd | print working directory 显示当前所在的目录(绝对路径) |
| cd ~ | 回到家目录 |
| cd | 回到家目录 |
| cd … | 进入到上级目录 |
| cd …/…/ | 进入到多层目录 |
| cd - | 返回上次所在目录,cd - ,- 是 cd 的选项 |
| cd . | 进入当前目录(未来一般与复制,移动一起用) |
2.2.mkdir创建目录
| 命令 | 说明 |
|---|---|
| mkdir | make directory |
| mkdir -p | 递归创建多层目录,-p表示选项 |
| mkdir -p test/{testa,testb}/{a,b} | 创建多个目录 |
| mkdir -pv test/{testa,testb}/{a,b} | 创建多个目录,并显示创建过程 |
[10:32:16 root@rocky8-1 ~]#mkdir -pv test/{
testa,testb}/{
a,b}
mkdir: created directory 'test'
mkdir: created directory 'test/testa'
mkdir: created directory 'test/testa/a'
mkdir: created directory 'test/testa/b'
mkdir: created directory 'test/testb'
mkdir: created directory 'test/testb/a'
mkdir: created directory 'test/testb/b'
[10:33:30 root@rocky8-1 ~]#
[10:33:52 root@rocky8-1 ~]#tree test
test
├── testa
│ ├── a
│ └── b
└── testb
├── a
└── b
6 directories, 0 files
[10:36:08 root@rocky8-1 ~]#mkdir -pv test/a/b/c/d/e/f/g/{
a,b,c,d}
mkdir: created directory 'test'
mkdir: created directory 'test/a'
mkdir: created directory 'test/a/b'
mkdir: created directory 'test/a/b/c'
mkdir: created directory 'test/a/b/c/d'
mkdir: created directory 'test/a/b/c/d/e'
mkdir: created directory 'test/a/b/c/d/e/f'
mkdir: created directory 'test/a/b/c/d/e/f/g'
mkdir: created directory 'test/a/b/c/d/e/f/g/a'
mkdir: created directory 'test/a/b/c/d/e/f/g/b'
mkdir: created directory 'test/a/b/c/d/e/f/g/c'
mkdir: created directory 'test/a/b/c/d/e/f/g/d'
[10:36:12 root@rocky8-1 ~]#tree test
test
└── a
└── b
└── c
└── d
└── e
└── f
└── g
├── a
├── b
├── c
└── d
11 directories, 0 files
2.3.touch创建文件
2.4.ls 查看目录内容
| 命令 | 说明 |
|---|---|
| ls | list 列表 |
| -l | long以长格式显示(显示详细信息,比较文件时间,大小,所有者) |
| -t | time 按照修改时间排序 |
| -r | … 逆序排序,一般-rt 一起用 |
| -h | 以人类可读形式显示大小 |
2.5.mv move移动、改名
操作前要备份
类似于剪切并粘贴.
2.6.cp copy 复制文件或目录【操作前备份】⚠️
| cp命令选项 | 说明 |
|---|---|
| -a | all 简单理解为复制所有 详情:-dpr |
| -r | 递归复制,复制目录及目录的内容 |
| -p | 复制的时候保持属性不变 |
| -d | 可以复制软链接 |
cp隐藏功能:备份
# 创建/backup/目录
# 把系统的网卡配置文件备份到/backup/目录下
mkdir /backup/
cp /etc/sysconfig/network-scripts/ifcfg-ens160 /backup/
ll /backup/
# 如果要恢复
# cp /backup/ifcfg-ens160 /etc/sysconfig/network-scripts/ifcfg-ens160
2.7.rm remove移除,删除文件或目录⚠️
| rm命令选项 | 说明 |
|---|---|
| -f | force 强制删除不提示,危险 |
| -r | 递归删除,删除目录及目录的内容,没有需求不要加上-r |
# 删除/test/a.txt文件
mkdir -pv /test/{
a,b}/{
c,d}
touch /test/a.txt
# 强制删除文件/test/b.txt
rm -f /test/b.txt
# 删除目录 /test/
rm -rf /test/
ls -l /test
[root@rocky8-1 /]#rm /test/a.txt
rm: remove regular empty file '/test/a.txt'? y
2.8.echo 输出信息到屏幕
关于大于号补充:
重定向:改变数据输出方向。默认输出到屏幕,现在可以让他输出到文件中。> 叫做重定向符号,先清空文件内容,然后再写入
>>叫做追加重定向,把信息写入到末尾
重定向符号好多
##输出信息到文件中
echo hello world >> /test/hello.txt
ls -l /test/
cat /test/hello.txt
输有规律的内容
echo {
0..10}
0 1 2 3 4 5 6 7 8 9 10
温馨提示:{}生成序列
简单是与echo使用输出
普通是与touch、mkdir一起使用,批量创建文件或目录
2.9.cat 显示文件内容
- cat主要功能显示文件内容
- concatenate合并文件
| cat命令选项 | 说明 |
|---|---|
| -n | number 显示文件内容及行号 |
- 显示文件内容并显示行号
# 显示文件内容并显示行号
cat -n /etc/sysconfig/network-scripts/ifcfg-ens160
- 扩展 合并
# 扩展 合并
输出 hello.txt和file.txt 2个文件的内容
cat hello.txt
cat file.txt
echo file.txt hello.txt
# 保存到1个文件中
cat file.txt hello.txt >> all.txt
echo all.txt
- cat可创建文件:命令如下
cat >>test.txt<<EOF
向文件写入多行内容
使用
EOF
三、Linux环境的初步优化【centos7.9】
3.1.检查虚拟机是否联网–虚拟机是否可以访问外部网络
ping baidu.com
3.2.配置阿里云 centos镜像yum源(安装软件的软件仓库)
阿里云 centos镜像源网站:https://developer.aliyun/mirror/centos
默认情况下yum下载软件的时候是从随机地址下载
配置yum从国内下载(仅执行即可)
# 配置阿里云 centos镜像yum源
## 备份yum源配置
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
## 下载 命令1
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
## 下载 命令2
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
3.3.安装Linux常用工具
# 安装Linux常用工具
yum -y install tree vim wget lrzsz
yum -y install net-tools sysstat iotop iftop htop unzip nc nmap telnet bc
yum -y install psmisc httpd-tools bind-utils nethogs expect ntpdate
# 终端复用器软件就是会话与窗口的“解绑”工具
yum -y install epel-release
yum -y install screen
# 命令补全
yum -y install bash-completion bash-completion-extras
# 安装linux娱乐工具
yum install -y sl cowsay
运行 tree 命令,运行 sl 命令
| 命令 | 作用 |
|---|---|
| tree | 以树形显示目录结构 |
| psmisc | pstree 等命令 |
| vim | vi升级版 |
| wget | 下载工具 |
| bash-completion(默认源) | 自动补全增强工具,可以补全命令参数 |
| bash-completion-extras(epel) | 自动补全超级增强工具,可以补全命令参数 |
| lrzsz | 上传下载工具 rz和sz |
| net-tools | ifconfig route命令属于的软件包 |
| sysstat | sar iostat 属于的软件包 |
| iotop | 查询系统每个进程的io读写情况 swap写入情况 |
| iftop | 查询网络流量情况 |
| nethogs | 显示每个进程的流量情况 |
| htop | top升级版 |
| unzip | 解压 |
| nc | ncat 类似telnet |
| nmap | 网络扫描工具 |
| telnet | 检查端口是否开启 |
| bc | 基础计算器 |
| lsof | 显示所有被打开的文件 |
| dig | DNS解析 bind-utils软件包 |
| nslookup | DNS解析 bind-utils软件包 |
| host | DNS解析 bind-utils软件包 |
| htpasswd | 创建密码文件 存放用户名和加密的密码 一般用于 nginx 简单认证中 |
| mkpasswd | 生成随机密码 属于expect软件包 |
3.4.软件安装完成后并检查后拍摄快照
- 检查是否有“完成”提示“Complete”
3.5.vi-vim编辑器详解
3.5.1.vi/vim区别
| 内容 | 区别 |
|---|---|
| vi | 系统自带,不需要额外安装,,没有vim功能多 |
| vim | 在最小化安装的版本默认没有,需要额外安装,vi的升级版(vi imporved),未来大部分情况都是用vim即可 |
3.5.2.vi/vim基本使用
3.5.2.1.打开文件(不存在也OK)
ls -l /test/
vim /test/log.txt
⚠️ vi/vim
如果文件不存在会自动创建;
如果目录不存在不会创建,会在保存并退出的时候报错。
报错信息:文件路径不存在
“/test/a/a/a.txt” E212: Can’t open file for writing
Press ENTER or type command to continue
3.5.2.2.进入编辑模式
- 按字母 i 即可,编辑这个文件
3.5.2.3.保存并退出
- 输入
:wqwrite(写,保存)quit(退出) :q!强制退出不保存:wq!强制退出并保存
3.5.2.4.检查
cat /test/log.txt
3.5.3.vim的模式转换
- 命令格式:通过vi/vim打开文件后进入的模式,默认进入的模式,可以输入各种vi/vim命令(快捷键)
- 编辑模式(插入模式):用于编辑,修改文件内容,需要按对应的命令(快捷键)
- 末行模式:保存退出,搜索使用。(输入:之后进入的地方)
- 可视块模式:用于批量编辑
3.5.4.vim快捷键 ⭐️⭐️⭐️⭐️⭐️
- 创建测试文件
cat /etc/services /etc/sysconfig/network-scripts/ifcfg-eth0 >> /test/vim.log
# 只操作/test/vim.log文件
- 移动光标类快捷键-必会⭐️⭐️⭐️⭐️⭐️
- 行之间调整: 上下调整
行之间调整: 上下调整
移动到最后一行 G(shift+g)
移动到第1行 gg
移动到某一行 100gg
- 列之间调整:左右
光标移动到行首 

发布评论