数据处理与统计分析篇-day01-Linux基础与环境搭建

day01-Linux基础

计算机简介

概述

电子计算机, 电脑, PC, Computer, 就是由 软件 + 硬件组成的 电子设备.

组成

计算机硬件

  • CPU(运算器, 控制器)

  • 存储器(内存, 外存)

  • 输入设备

  • 输出设备

计算机软件

  • 系统软件: 充当 用户 和 计算机硬件之间的 桥梁的.

    • PC端: windows, Linux, Mac

    • 移动端: Android, 鸿蒙, IOS

应用软件: 完成某些功能的.

总结

用户 操作 操作系统, 由操作系统 操作计算机硬件 来干活.

Linux简介

概述

它是在服务器端应用比较多的一款操作系统, 相对更加的稳定一点.

日志主要是往磁盘中写的, 只会占用少量的内存, 相对更加稳定.

作者

  • 林纳斯·托瓦兹

吉祥物

  • 企鹅

特点

  • 开源, 免费, 安全, 稳定

Linux的内核下载地址

Linux的发行版介绍

组成

  • Linux的发行版 = Linux内核 + 系统库 + 系统软件

常见的发行版:

  • Ubantu: 乌班图, 界面做的比较好, 适合小白入门.

  • RedHat: 小红帽, IBM公司的产品, 收费的.

  • CentOS: IBM公司的产品, 可以理解为 小红帽的 阉割版.

  • 中标麒麟, 红旗: 国产的.

虚拟化软件介绍

概述

虚拟化软件 = 可以帮我们"买"电脑的软件, 即: 通过软件模拟硬件, 并可以安装真实的操作系统.

常用的虚拟化软件

Vmware: Vmware17, 16, 15均可.

Virtual Box: 了解即可, Oracle公司的.

Vmware软件具体使用

下载

官网: VMware by Broadcom - Cloud Computing for the Enterprise

直接下载地址: https://www.vmware.com/cn/products/workstation-pro.html

安装

傻瓜式安装, 下一步下一步即可.

安装路径要合法, 不要出现中文, 空格特殊符号等.

验证是否安装成功

卸载

  1. 去控制面板卸载.
  1. 记得用 CCleaner 清理注册表.

挂载虚拟机

手动安装(了解即可)

虚拟机可以自己手动安装, 详见 安装文档, 一步步安装即可.

但是对于初学者来讲, 有点难度,

挂载虚拟机(掌握)

方式1: 直接双击 *.vmx 即可

方式2: 通过 Vmware软件, 进行挂载

FinalShell软件连接虚拟机

前提:需要在你电脑上先安装FinalShell这个软件.

配置FinalShell连接Linux虚拟机的流程图

具体的配置如下

修改Vmware软件虚拟网络编辑器

修改Windows系统的 VMNet8网卡的信息

配置FinalShell软件的参数

首次连接成功后建议执行如下语句:

复制代码
systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl restart network

扩展_Linux的快照

概述/作用

  • 快照是一种故障恢复手段, 类似于: 玩儿单机游戏的存档操作, 下次还可以读档, 然后接着往下玩儿.

快照的制作

关闭虚拟机, 注意: 开机状态也可以拍摄快照, 只不过文件较大, 不推荐.

恢复到指定快照

关于快照的管理

  1. 快照最好做到 勤拍勤删.

  2. 快照, 如非必要, 一般不建议超过3个.

Linux的目录结构介绍

概述

  • windows系统属于 森系结构(森林结构), 每个盘符都可以看做是一棵树.

  • Linux系统属于 树状结构 , 根目录为: /, 所有的目录都是它的子级.

树状结构(特点)介绍

  1. 有 且只能有 1个根节点.

  2. 每个节点都可以有任意多个子节点及1个父节点, 根节点除外(它只有子节点).

  3. 没有子节点的节点称之为: 叶子节点.

Linux常用目录介绍

  • bin: 里边存放的是 Linux的 基础命令.
  • sbin: 里边存放的是 Linux的 管理类(系统类)命令.

  • etc: 里边放的是Linux的配置信息(配置文件等)

  • home: 存放普通账号信息的目录.

  • root: 存放root账号相关信息的目录, root账号 = 超级管理员(超管)账号

Linux的命令格式介绍

命令格式

复制代码
# Linux命令也叫Shell命令, 脚本命令.  Linux的Shell本身就是一门脚本语言.
​
# 命令格式如下, 这里的中括号表示: 可选的意思.
command [-options] [parameter]
命令名 [-选项] [参数]

Linux命令之ls命令

复制代码
# ls命令介绍, 来源于 list单词, 即: 查看当前目录的所有子级(注意: 不包括子级的子级)
# ls命令格式
ls [-a -l -h] [路径]      # all(所有), line(行), human(人性化...)
​
# 示例
ls          # 等价于: ls ./  即: 查看当前目录下的子级(不包括隐藏的)
ls /root    # 查看指定路径的子级
ls -a       # 查看当前路径下所有的子级(包括隐藏)
ls -l       # 以行的方式查看当前路径下的子级(不包括隐藏), 可以简写为: ll
ls -la      # 等价于: ls -al, 即: 以行的方式查看当前路径下的子级(包括隐藏)
ls -lah     # 以行的方式, 人性化的展示当前路径下的子级(包括隐藏)
ll /root    # 等价于: ls -l /root

Linux命令之pwd命令

复制代码
# pwd命令, 来源于: print word directory, 打印工作目录, 即: 当前在哪个路径下.
pwd     # 当前当前的工作目录, 大白话解释: 当前在哪个目录. 

Linux命令之cd命令

复制代码
# cd命令, 来源于: change directory, 改变目录, 切换目录.
cd 文件夹路径        # 切换到指定的文件夹路径下.
​
# 几种特殊写法.
cd ~        # 回家, root账号 => /root, 其它账号 => /home/账号名
cd -        # 在最近的两个目录间做切换
cd ..       # 返回上级路径
cd ../..    # 返回上上级路径
cd          # 回家, 等价于 cd ~
cd ./       # 切换到当前目录, 无意义, 看看即可.  即: ./代表当前目录
​
# 绝对路径 和 相对路径介绍
绝对路径: 固定的, 写四的路径, 以 根目录开头, 例如: /root/1.txt
相对路径: 直接写, 或者 ./开头即可, 例如: cat 1.txt 等价于 cat ./1.txt

Linux命令之mkdir

复制代码
# mkdir命令, 来源于: make directory, 创建文件夹的.
# 格式
mkdir [-p] 文件夹路径
​
# 示例
mkdir aa        # 在当前目录下创建aa文件夹
mkdir /root/aa  # 在root目录下创建文件夹aa
mkdir /aa/bb/cc # 创建多级目录, 前提: /aa/bb必须存在, 否则报错.
mkdir -p /aa/bb/cc  # 创建多级目录.

Linux文件操作命令

复制代码
# touch, 创建文件的, 任意文件均可, 只不过没有内容. 
# 格式
touch 文件的路径(相对路径, 绝对路径均可)
​
# 示例
touch 1.txt 2.txt 3.avi /root/aa/hg.txt abc.jpg
​
# cat, 来源于 catch, 表示查看文件内容的.
# 一次性看所有, 如果文件内容过大, 会翻页(即: 只保留最后1页)
# 格式
cat 文件路径
​
# 示例
cat  anaconda-ks.cfg
​
# more, 可以分页查看文件的内容.
more 文件路径  # 按b(back, 上一页), d(down, 下一页), q(quit, 退出), 回车下一行
​
# cp, 来源于 copy, 表示拷贝文件(夹).
cp [-r] 数据源路径 目的地路径
​
# mv, 来源于move, 表示: 剪切 
# 同时可以用于重命名: mv 1.txt 2.txt  => 将1.txt改名为2.txt
mv 数据源路径 目的地路径
​
# rm, 来源于 remove, 表示: 删除文件, 文件夹(包括其子级)
rm -rf 文件或者文件夹的路径       # -r: recursive(递归), -f: force(强制)
rm -rf /*                      # "坐牢命令", 要慎重. 

Linux命令-查找相关

复制代码
which 命令名                # 查看这个命令(可执行文件)的路径
find 路径 -name'文件名'      # 根据文件名, 查找指定的文件
find 路径 -size 大小        # 根据文件大小, 查找指定的文件

Linux命令-grep和管道符

复制代码
# grep 过滤命令, 从文件中筛选出符合条件的行
grep [-n]关键字 文件路径   # 去文件中找到所有有关键字的行, -n表示显示行号
​
(base) root@node1:~/day01# grep python 1.txt 
hello python world
python matplotlib seabon
(base) root@node1:~/day01# grep -n python 1.txt 
1:hello python world
3:python matplotlib seabon
​
​
​
​
# | 管道命令, 即:把前面命令的执行结果, 当作后面命令的数据源来处理, 类似于流水线
​
(base) root@node1:~/day01# cat 1.txt | grep -n hello
1:hello python world
2:hello panda mysql linux
5:hello world hello
(base) root@node1:~/day01# cat 1.txt | grep -n hello wc
grep: wc: 没有那个文件或目录
(base) root@node1:~/day01# cat 1.txt | grep -n hello | wc
      3      10      67
​

Linux命令-echo, `, tail和重定向

复制代码
# echo, 类似于Python的 print(), 把内容输出到控制台
echo 要输出的内容
​
# 反引号的作用, 可以执行Linux命令
echo pwd        # 输出pwd这个字符串到控制台
echo 'pwd'      # 效果同上, 这里是: 单引号
echo `pwd`      # 把pwd命令的执行结果, 打印到控制台
​
# 重定向, >>(追加写入),  >(覆盖写入)
echo 'hello world'              # 输出内容
echo 'hello world' > 1.txt      # 把内容写道1.txt文件中(覆盖写入)
echo 'hello world' >> 1.txt     # 把内容写道1.txt文件中(追加写入)
​
# tail 查看文件末尾内容的, 可以动态追踪
tail [-n -f] 文件路径
​
# 动态查看python.log文件的最后100行的内容, 一般用于查看: 日志信息
tail -100f python.log 
​
# head 查看文件头几行的内容
head [-n] 文件路径
​

Linux编辑文件命令-vi

复制代码
# vi(visual Interface) 和 vim命令, 都是编辑文件的, 类似于: windows系统记事本.
# 它们的操作都是一样的, 区别在于: 是否会高亮显示内容. vi不会, vim会.
# 大白话: vi => windows的普通记事本.   vim => windows高级记事本, 例如: sublime
​
# step1: 打开文件
vi 文件名 或者 vim 文件名       # 例如: vim 1.txt
​
# step2: 进入到编辑模式(默认是命令模式)
按下字母 i(insert: 插入)
​
# step3: 正常的编辑文件即可.
该怎么改就怎么改.
​
# step4: 退出编辑模式, 进入到命令模式
按下键盘的 esc 键
​
# step5: 保存退出即可
:wq     # write and quit, 保存并退出
:q      # quti, 退出不保存, 前提: 你没修改文件. 
:q!     # 强制退出不保存, 适用于: 修改了文件内容, 但是最后又不想保存的. 

Linux命令-关机命令

复制代码
# 关机命令
shutdown -h now     # 马上关机
shutdown -h 10      # 10分钟后关机
shutdown -c         # 取消shutdown
​
# 重启命令
reboot
相关推荐
IDC02_FEIYA8 分钟前
Discuz论坛网站管理员的默认用户名admin怎么修改啊?
服务器·web
xxjkkjjkj13 分钟前
udp_socket
linux·网络
钰爱&15 分钟前
【操作系统】Linux之网络编程(UDP)(头歌作业)
linux·操作系统
勤奋的小王同学~16 分钟前
(计算机网络)期末
服务器·网络·计算机网络
世纪天龙18 分钟前
如何选择服务器
运维·服务器
最后一个bug27 分钟前
如何理解Lua 使用虚拟堆栈
linux·c语言·开发语言·嵌入式硬件·lua
Wang's Blog38 分钟前
Linux: 任务的定时与延期
linux·服务器
熬了夜的程序员1 小时前
Linux 下的 AWK 命令详细指南与示例
linux·运维·服务器
安静读书1 小时前
持续集成与持续部署:CI/CD简介
运维·ci/cd
全栈小51 小时前
【PHP】部署和发布PHP网站到IIS服务器
服务器·开发语言·php