学习大数据DAY20 Linux环境配置与Linux基本指令

目录

[Linux 介绍](#Linux 介绍)

[Linux 发行版](#Linux 发行版)

[Linux 和 Windows 比较](#Linux 和 Windows 比较)

[Linux 就业方向:](#Linux 就业方向:)

[下载 CentOS](#下载 CentOS)

[Linux 目录树](#Linux 目录树)

[Linux 目录结构](#Linux 目录结构)

[作业 1](#作业 1)

常用命令分类

文件目录类

[作业 2](#作业 2)

[vim 编辑文件](#vim 编辑文件)

[作业 3](#作业 3)


你问我第 19 天去哪了?第 19 天在汇报第一阶段的知识总结,没什么好写的了。

Linux 介绍

linux 是一个开源、免费的操作系统,其稳定性、安全性已得到业界认可,很多
企业项目都会部署到 Linux/unix 系统上。
常见的操作系统:
unix、linux、Windows、IOS、Android、Mac

Linux 发行版

● Ubuntu( 乌班图 )
● RedHat( 红帽 )
● CentOS
● Debian
● Fedora
● SuSE
● OpenSUSE

Linux 和 Windows 比较

Linux 就业方向:

服务器运维工程师

下载 CentOS

下载地址, 一般选择国内镜像下载
官网下载: http://isoredirect.centos.org/centos/7/isos/x86_64/
网易镜像: http://mirrors.163.com/centos/7/isos/

Linux 目录树

Linux 目录结构

  1. linux 的目录有且只有一个根目录 /
  2. linux 的各个目录存放的内容的规划好的, 不用乱放文件
  3. linux 是以文件的形式管理我们的设备, 因此 linux 系统, 一切皆为文件
  4. linux 的各个目录下存放什么内容, 大家必须有一个认识 5. 学习后, 你的脑海里应该有一棵 linux 目录树

作业 1

安装 CentOS 并实现远程连接

  1. 按照文档安装---《centos7 安装.docx》
    链接:https://pan.baidu.com/s/1mm1m3N4O4V47m9kzEUz19Q
    提取码:awsl
    2.使用命令 init 0 关机,再使用 mobax 连接

常用命令分类

文件目录类
搜索查看查找类
压缩安装类
用户权限类
网络配置类
其他扩展类

文件目录类

cd 切换到指定目录

cd ~ 或者 cd 回到自己的家目录
cd ../ 回到当前目录的上一级目录
从根目录算起的路径叫做绝对路径,以斜线开头
cd /home
从当前目录算起的路径叫做相对路径,当前工作目录的相对位置
cd sql

pwd 现在所在的目录位置

ls 查看内容
ls -a all,显示全部包括隐藏文件(隐藏文件以.开头)
ls -l 等于 ll 显示长格式属性
ls -r 反向排序
ls -S 按照占磁盘大小从大到小排序
ls -t 以时间排序(由新到旧)
指定路径查看
ls /home/test
mkdir 创建目录
mkdir a 创建一个目录 mkdir b c 同时创建多个目录
mkdir -p d/e 创建多级目录或称为递归创建
touch 创建空文件
touch name.txt
touch {1..5}.txt
通配符---配合文件名及目录使用
?匹配一个字符 f?.txt
* 匹配全部字符 *.txt
{1..10} 1 到 10
{a..z} a b c ...z
{A..Z} A B C .....Z
rm 删除文件或目录
可以删除一个目录中的一个或多个文件或目录及其下属的所有文件及其子目录
均删除掉;
对于链接文件,只是删除整个链接文件,而原有文件保持不变
-f:强制删除;
-r:递归处理,将指定目录下的所有文件与子目录一并处理(删目录);
rm t.txt 删除文件
rm -r a 删除 a 目录(文件夹)及其里面的文件及子目录
rm -rf * 强制删除文件夹下面的子目录和文件
rm -rf q*强制删除以 q 开头的文件夹及下面的子目录和文件
mv 移动文件和目录, 或者重命名
mv a b
mv a c/
mv a.txt b.txt
mv b.txt ../c.txt
cp 拷贝文件到指定目录
cp -r 递归拷贝目录(复制包括所有子文件,必须使用)
cp a.txt b/a.txt
cp a.txt b/b.txt
cp -r /root/a /root/b
ln 软连接, 类似 win 快捷方式
什么是软连接?
软连接是 Linux 系统上的另一个文件或目录。
这和 Windows 系统中的快捷方式有点类似,链接文件中记录的只是原始文件的
路径,并不记录原始文件的内容。
什么是硬链接?
硬链接是原始文件的一个镜像副本。创建硬链接后,如果把原始文件删除,链接
文件也不会受到影响,因为此时原始文件和链接文件互为镜像副本。
cd /home/test
ln -s /home/test ceshi
cd ceshi
快捷键
1.Tab 命令补全;文件名或者路径补全;连续按 2 次 Tab 键,显示以已输入字符
开头的所有
命令、文件名或路径
2.Ctrl + C 1、取消当前命令行的编辑;2、结束当前执行的命令
3.上下键自动记录命令
4.Ctrl+滚轮上下滚动可以放大缩小
5.mobax 右键快速粘贴,修改完重启 mobox 生效

作业 2

  1. 分别使用绝对路径和相对路径切换到 home 目录
    cd /home
    cd ../home
  2. 回到当前目录的上一级目录
    cd ../
  3. 回到家目录
    cd ~
  4. 在 /home 目录下创建两个目录 class a
    cd /home
    mkdir class a
  5. 创建目录 /home/class/students
    mkdir -p /home/class/students
  6. 删除一个目录 /home/a
    rm -rf /home/a
  7. 在目录 /home/class/students 下创建个文件 name.txt
    touch /home/class/students/name.txt
  8. 将 /home/class/students/name.txt 复制到 /home/class 目录
    cp /home/class/students/name.txt /home/class/
  9. 创建 /home/class/teachers 文件夹,复制整个目录 /home/class/students 到
    /home/class/teachers/ 文件夹下
    mv /home/class/students /home/class/teachers/ 10. 删除 /home/class/name.txt
    rm -f /home/class/name.txt
  10. 删除文件夹及里面的文件 /home/class/teachers
    rm -rf /home/class/teachers
    12./home 目录下创建一个文件 name.txt, 重命名 /home/name.txt 文件为 age.txt
    touch /home/name.txt
    mv /home/name.txt age.txt
  11. 将 /home/age.txt 拷贝到 /root/ 目录下
    cp /home/age.txt /root/
  12. 在 /root 下创建一个软连接 wk ,指向 /etc/sysconfig/network-scripts/ifcfg-ens33 ,然后
    使用 ll 查看这个软连接
    ln -s /etc/sysconfig/network-scripts/ifcfg-ens33 wk
    ll
  13. 删除上题中建立的软连接
    rm wk
    y
  14. 在 /root 下递归创建目录 xxx/yyy/zzz
    mkdir -p /root/xxx/yyy/zzz
  15. 使用 touch 命令在 zzz 目录中批量创建文件: test1.log...test10.log , a.txt...z.txt ,
    a1.txt...a10.txt b1.txt..b10.txt ... z1.txt...z10.txt
    cd /root/xxx/yyy/zzz
    touch test{1..10}.log {a..z}{1..10}.txt
  16. 删除 zzz 中所有名字是单个字母后缀是 txt 的文件
    rm -f {a..z}.txt {A..Z}.txt
  17. 将 zzz 中所有 test 开头的文件复制到上级目录 yyy 中
    cp /root/xxx/yyy/zzz/test*.txt /root/xxx/yyy/

vim 编辑文件


进入一般模式后,可在键盘输入,实现删除、复制、粘贴。
dd 删除光标所在的行,且保存到剪贴板
3dd 删除光标所在的三行,且保存到剪贴板
yy 复制光标所在的行
4yy 复制光标所在的连续 4 行
p(小写) 将已复制的内容在光标的下一行粘贴
P(大写)将已复制的内容在光标的上一行粘贴
x,X:在一行字中,x 为向后删除一个字符(相当于[Del]键),X 为向前删除一
个字符(相当于[Backspace])也可 5x 等
G 光标快速定位到最后一行
gg 光标快速定位到第一行
u 撤销上一步操作
命令行模式
q 不保存退出 后面加!为强制退出
wq 保存后退出 后面加!为强制保存后退出
!强制执行(强制退出,强制保存)
:set nu 显示行号
:set nonu 取消行号
:5 光标快读定位到第 5 行
:nohl 去除高亮显示
查找:
(以下直接输入/)
/hello 查找字符串,按 n 向上搜索,按 N 向下搜索
替换字符串
替换字符串命令的基本语法是 :[range]s/ ⽬ 标字符串/替换字符串/[option],
其中 range 和 option 字段都可以缺省不填,间隔符除了/还可以是其他的。
range:表 ⽰ 搜索范围,默认表 ⽰ 当前 ⾏ ; 1,10 表 ⽰ 从第 1 到第 10 ⾏ ;
g 表示全局替换,有多少次替换多少次;无 g 只替代每行第一个
s 表示替换
:1,s/nologin/88888/g :1,s#nologin#88888#g
把整个文件的 nologin 替换成 888888
:1,10s/nologin/88888/g
把 1 到 10 行的 nologin 替换成 888888
创建快照
类似于备份系统,以便还原系统
打开虚拟机:虚拟机-快照-拍摄快照
如果系统出问题可以还原到这个拍照的节点
快照可以是关机也可以是开机,开机快照内存中的也会备份,建议关机拍快照

作业 3

1.将/etc/man_db.conf 复制到家目录/root 下;
cd /etc
cp man_db.conf /root/
2.使用 vim 开启家目录下的 man_db.conf 在 vim 中设定一下行号;
vim man_db.conf
G
:set nu
3.定位到第 68 行
:68
4.移动到第一行,并且向下搜寻一下 SECTION 这个字符串,请问他在第几行?
gg
/SECTION
5.接下来,我要将 50 到 100 行之间的小写[man]字符串改为大写[MAN]字符串
:50,100s/man/MAN/g
6.修改完之后,突然反悔了,要全部复原,有哪些方法?
u
7.我要复制 65 到 73 这 9 行内容,并且贴到最后一行之后;
:65
9yy
G
p
8.到第 70 行,并且向右删除 5 个字符
:70
xxxxx
9.在第一行新增一行,该行内容输入[I am a student...]
gg
i
回车
I am a student...
按下 ESC 退出
10.找到原来猴子吃桃的题目,把代码拷贝到第 50 行之后
复制
:50
按向右方向键进入行末
回车
按下 Shift+insert
按下 ESC
11.到第 30 行,删除 30 到 38 行
:30
9dd
12.取消行号,存储后离开吧!
:set nonu :wq!
13.配置静态 ip,vim /etc/sysconfig/network-scripts/ifcfg-ens33
(1) 定位到第四行,修改成如下:
BOOTPROTO="static"
vim /etc/sysconfig/network-scripts/ifcfg-ens33
:4
i
修改
ESC
(2) 在文档末尾插入如下内容(IPADDR 和 GATEWAY 使用自己的),保存退出
ZONE=public
IPADDR="192.168.25.133"
NETMASK="255.255.255.0"
GATEWAY="192.168.145.2"
DNS1="8.8.8.8"
DNS2="114.114.114.114"
G
复制,按方向键到行末
i
回车
粘贴
ESC
:wq!
(3) 执行 service network restart 重启网络
service network restart
14. 关机,拍摄快照《linux 配置完成》
快照拍摄位置:

命名后可保存,描述可写可不写。

我们需要:
Select knowledge
from course left join self-study on course.psychology=self-study.psychology
Where course.psychology=enthusiasm;

相关推荐
dsywws2 分钟前
Linux学习笔记之vim入门
linux·笔记·学习
晨曦_子画41 分钟前
3种最难学习和最容易学习的 3 种编程语言
学习
幺零九零零1 小时前
【C++】socket套接字编程
linux·服务器·网络·c++
城南vision1 小时前
Docker学习—Docker核心概念总结
java·学习·docker
ctrey_2 小时前
2024-11-1 学习人工智能的Day20 openCV(2)
人工智能·opencv·学习
十年之少2 小时前
由中文乱码引来的一系列学习——Qt
学习
小林熬夜学编程2 小时前
【Linux系统编程】第四十一弹---线程深度解析:从地址空间到多线程实践
linux·c语言·开发语言·c++·算法
程思扬3 小时前
为什么Uptime+Kuma本地部署与远程使用是网站监控新选择?
linux·服务器·网络·经验分享·后端·网络协议·1024程序员节
u0101526583 小时前
STM32F103C8T6学习笔记2--LED流水灯与蜂鸣器
笔记·stm32·学习
sun0077003 小时前
拷贝 cp -rdp 和 cp -a
linux·运维·服务器