第三十一天 Linux介绍和基础命令

目录

1.前言

1.1 什么是Linux

1.2 为什么要学Linux

1.3 学完Linux能干什么

2.Linux简介

2.1 主流操作系统

2.2 Linux发展历史

3. Linux安装

3.1 安装方式介绍

3.2 安装VMware

3.3 安装Linux

3.4 网卡设置

3.5 安装SSH连接工具

3.6 Linux目录结构

4.Linux常用命令

4.1 Linux命令初体验

4.2 文件目录操作命令

4.3 拷贝移动命令

4.4 打包压缩命令

4.5 文本编辑命令

4.6 查找命令


Linux简介
Linux安装
Linux常用命令

若有收获,就点个赞吧~~~

1.前言

1.1 什么是Linux

Linux是一套免费使用和自由传播的操作系统。说到操作系统,大家比较熟知的应该就是Windows和MacOS操作系统,我们今天所学习的Linux也是一款操作系统。

1.2 为什么要学Linux

那么我们为什么要学习Linux呢,主要出于两个方面的原因。
1). 企业用人要求
很多知名招聘网站上搜索的java开发工程师的岗位要求,在很多的岗位要求中都提到了Linux操作系统的经验。

为什么作为javaEE开发工程师,企业还要求我们会Linux操作系统的相关知识呢?
这是因为Linux操作系统提供了很多稳定的发行版本,广泛的应用在我们的各种服务器操作系统领域,我们将来开发出来的项目,最终要上线运行,就需要将项目部署在Linux服务器中。


2). 个人发展需要

我们作为javaEE开发工程师,将来在企业中开发时会涉及到很多的数据库、中间件等技术,比如MySQL、Redis、MQ等技术,而这些应用软件大多都是需要安装在Linux系统中使用的。我们做为开发人员,是需要通过远程工具连接Linux操作系统,然后来操作这些软件的。而且一些小公司,可能还需要我们自己在服务器上安装这些软件。
所以,不管从企业的用人需求层面,还是个人发展需要层面来讲,我们作为服务端开发工程师,Linux的基本使用是我们必不可少的技能。


1.3 学完Linux能干什么

学习完Linux操作系统课程之后,我们可以做以下几个方面的事情:

1). 环境搭建系统安装 : 一般我们不会直接将Linux系统安装在本机电脑上,而会安装在公司的一台专门的服务器上

远程连接 : 那么我们要想使用服务器,一般都是通过远程连接工具连接Linux系统进行操作。


2). 常用命令

连接上服务器之后,我们可以通过所学习的相关指令, 来操作Linux服务器,在Linux服务器中可以执行如下操作:
A. 文件、目录的基本操作(查看,删除,创建等)
B. 文件及文件夹的拷贝、移动、重命名
C. 文件的打包、压缩、解压缩操作
D. 文本的编辑


3). 安装软件

基本的常用指令学会操作之后,我们可以在Linux服务器中安装我们开发常用的软件,比如: JDK、Tomcat、MySQL的安装及配置。


4). 项目部署把基础的软件及环境安装配置好之后,我们就可以将我们开发的项目部署在服务器中进行运行并测试。

对于我们学习Linux操作系统时,Linux命令是基础,也是学习Linux系统的重点内容,虽然Linux的指令有很多,但是我们常用的指令并不多,大家在学习的时候,主要掌握这部分常用的指令就可以了,对于其他的指令,以后我们用到的时候,知道怎么查询即可。对于Linux的常⽤指令的学习,最好的学习方法就是:多敲

 

2.Linux简介

2.1 主流操作系统


不同领域的主流操作系统,主要分为以下这么几类: 桌面操作系统、服务器操作系统、移动设备操作系统、嵌入式操作系统。接下来,这几个领域中,代表性的操作系统是那些?
1). 桌面操作系统


2).服务器操作系统

部署应用软件的操作系统:


3). 移动设备操作系统

4). 嵌⼊式操作系统

2.2 Linux发展历史

时间:1991年
地点:芬兰赫尔⾟基⼤学
⼈物:Linus Torvalds(21岁)
语⾔:C语⾔、汇编语⾔
logo:企鹅
特点:免费、开源(源代码开放)、多⽤户(同时允许多个⽤户操作同⼀
个Linux系统)、多任务(同时允许多个任务执⾏)

2.3 Linux系统版本

Linux系统的版本分为两种,分别是: 内核版 和 发行版。


1). 内核版
由Linus Torvalds及其团队开发、维护
免费、开源
负责控制硬件


2). 发⾏版
基于Linux内核版进行扩展
由各个Linux厂商开发、维护
有收费版本和免费版本

我们使用Linux操作系统,实际上选择的是Linux的发行版本。在linux系统中,有各种各样的发行版本,具体如下:

除了上述罗列出来的发行版,还有很多Linux发行版,这里,我们就不再一一列举了。

3. Linux安装


3.1 安装方式介绍

Linux系统的安装方式,主要包含以下两种:

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功 能、运⾏在完全隔离环境中的完整计算机系统。常⽤虚拟机软件:
VMWare VirtualBox VMLite WorkStation Qemu HopeddotVOS 那么我们就可以在课程中将Linux操作系统安装在虚拟机中,我们课上 选择的虚拟机软件是VMware。



3.2 安装VMware



在我们的课程资料中提供了VMware的安装程序。直接双击运⾏ VMware安装程序,根据提示完成安装即可。


以上就是VMware在安装时的每⼀步操作,基本上就是点击 "下⼀步" 一直进行安装。


3.3 安装Linux


VMware虚拟机安装完毕之后,我们就可以打开VMware,并在上⾯来 安装Linux操作系统。具体步骤如下:
1). 选择创建新的虚拟机


2). 选择"典型"配置



3). 选择"稍后安装操作系统(S)"


4). 选择"Linux"操作系统,"CentOS7 64位"版本



5). 设置虚拟机的名称及系统⽂件存放路径


6). 设置磁盘容量


7). ⾃定义硬件信息


8). 启动上述创建的新虚拟机


9). 选择"Install CentOS7"


进⼊到Linux系统⾥⾯, 我们发现光标⽆法移动到windows操作系统 中了, 这个时候, 我们可以通过快捷键 "Ctrl+Alt" 切换光标到windows系统中。

10). 选择语⾔为 "简体中⽂"


11). 选择"⾃动配置分区"


12). 选择"基础设施服务器"

最小安装: 在安装Linux时占⽤最少空间,有很多功能都被忽略了

建议安装: 基础设施服务器


13). 设置"root"⽤户密码


安装完毕后,点击窗⼝中的蓝⾊的 "重启" 按钮,重启Linux系统。

14). 登录系统


注意 : 在Linux系统中,在命令行中输入密码信息,为了保证安全性,密码是不显示的(看似没有输入,实际已经输入了);


3.4 网卡设置


服务器重启完成之后,我们可以通过linux的指令 ip addr  来查询 Linux系统的IP地址,具体信息如下:


从图中我们可以看到,并没有获取到linux系统的IP地址,这是为什么 呢?这是由于启动服务器时未加载⽹卡,导致IP地址初始化失败⽽造成 的。那么接下来我们就需要来修改⽹络初始化配置,设定⽹卡在系统启动 时初始化。 具体操作步骤如下:

 



备注: 在上述的操作中⽤到了Linux中的相关指令, ⽬前⼤家不⽤深 究, 后⾯会详细讲解, ⽬前⼤家只需要把这个⽂件的配置项ONBOOT的值有no改为yes即可。
2). 重新启动虚拟机


重启之后, 再次输⼊root的⽤户名密码,登录到Linux系统之后,可以通 过指令 ip addr  来查看IP地址。

 
说明: 如果开启后,没有显示ip地址,则需要重启⽹卡设置: service network restart



3.5 安装SSH连接工具


3.5.1 SSH连接工具介绍


Linux已经安装并且配置好了,接下来我们要来学习Linux的基本操作 指令。⽽在学习之前,我们还需要做⼀件事情,由于我们企业开发时, Linux服务器⼀般都是在远程的机房部署的,我们要操作服务器,不会每次 都跑到远程的机房⾥⾯操作,⽽是会直接通过SSH连接⼯具进⾏连接操 作。


SSH(Secure Shell),建立在应用层基础上的安全协议。常⽤的SSH 连接工具:



3.5.2 FinalShell安装

下载FinalShell
双击.exe文件,然后进行正常的安装即可。


3.5.3 连接Linux
1). 打开finalShell


2). 建立连接


3.6 Linux目录结构


登录到Linux系统之后,我们需要先来熟悉⼀下Linux的⽬录结构。在 Linux系统中,也是存在⽬录的概念的,但是Linux的⽬录结构和Windows 的⽬录结构是存在⽐较多的差异的 。在Windows⽬录下,是⼀个⼀个的盘 符(C盘、D盘、E盘),⽬录是归属于某⼀个盘符的。Linux系统中的⽬录有 以下特点: A. / 是所有⽬录的顶点 B. ⽬录结构像⼀颗倒挂的树
Linux 和 Windows的目录结构对比:


Linux的目录结构,如下:


根目录/ 下各个目录的作用及含义说明:
 



4.Linux常用命令


4.1 Linux命令初体验


4.1.1 常用命令演示


在这一部分中,我们主要介绍几个常用的命令,让大家快速感受以下
Linux指令的操作方式。主要包含以下几个指令:

接下来,我们快速的来演示⼀下这些常⽤的指令。
1). ls


指令解读: ls 查看当前⽬录下的内容(⽂件及⽬录) ls / 查看指定⽬录(/)下的内容
2). pwd


指令解读: pwd 查看当前所在⽬录
3). cd


指令解读: cd / 切换到根⽬录 cd /root 切换到/root⽬录 cd .. 切换到上⼀级⽬录 cd ./aa 切换到当前⽬录下的aa⽬录下
4). touch


指令解读: touch 1.txt 在当前⽬录下创建⽂件1.txt

touch 2.txt 3.txt 4.txt ⼀次性创建⽂件2.txt,3.txt,3.txt 本质是构建了⼀个空的⽂件;
5). mkdir


指令解读: mkdir 01 创建⽂件夹01
6). rm


指令解读: rm 4.txt 删除⽂件 (删除⽂件时,需要确认,输⼊y, 代表确定)
注意:


在执⾏Linux命令时,提示信息如果显示为乱码,如上图所示。这是由 于编码问题导致,只需要修改Linux的编码即可,命令如下:
echo 'LANG="en_US.UTF-8"' >> /etc/profile source /etc/profile
4.1.2 Linux命令使⽤技巧在我们使用Linux系统命令时,可以使用以下几个技巧:
1). Tab键自动补全
2). 连续两次Tab键,给出操作提示
3). 使用上下箭头快速调出曾经使用过的命令
4). 使用clear命令或者Ctrl+l快捷键实现清屏
5).使用ctrl+c终止当前进程对当前终端的占用

操作示例:
A. 执行指令的时候,对于操作的文件/目录,按一下Tab会自动补全:


B. 如果上述以 "1." 开头的⽂件有多个,可以按两下Tab键,给出操作 提示:


C. 使⽤clear命令或者Ctrl+l快捷键实现清屏:


清屏之后,界⾯就变得⼲净了:



4.1.3 Linux命令格式


操作示例:



4.2 文件目录操作命令


4.2.1 ls



注意:无论是window或者linux,目录以.开头,则默认隐藏
操作示例:


4.2.2 cd


操作示例:


cd .. 切换到当前⽬录位置的上级⽬录; 可以通过 cd ../.. 来切换到上级 ⽬录的上级⽬录。
4.2.3 cat

操作演示:


cat 指令会⼀次性查看⽂件的所有内容,如果⽂件内容⽐较多,这个时 候查看起来就不是很⽅便了,这个时候我们可以通过⼀个新的指令more。
注意事项:如果内容比较少,使⽤cat命令比较⽅便。但是如果内容比 较多(成百上千行)则不建议使⽤cat(cat读取数据是全量读取的)


4.2.4 more


操作示例:

当我们在查看一mor些比较大的文件时,我们可能需要经常查询文件
尾部的数据信息,那这个时候如果文件很大,我们要一直向下翻⻚,直到
最后一⻚,去看最新添加的数据,这种方式就比较繁琐了,此时,我们可
以借助于tail指令。
思考问题:
如果某个文本比较大,而查询的内容比较靠前,则使用more比较格
式,但是如果要查询的内容在文件的末尾,使用tail比较合适
如果是小文件查询,则使用cat比较合适

4.2.5 tail


操作示例: A默认查询文件尾部10行记录


B. 可以通过指定参数设置查询尾部指定行数的数据


C. 动态读取文件尾部的数据


在窗口1中执行指令 tail -f 1.txt 动态查看文件尾部的数据。然后
在顶部的标签中右键选择 "复制标签",打开新的窗口2 , 此时再新打开的窗
口2中执行指令 echo 1 >> 1.txt , 往1.txt文件尾部追加内容,然后我们就
可以在窗口1中看到最新的文件尾部的数据。
如果我们不想查看文件尾部的数据了,可以直接使用快捷键 Ctrl+C ,
结束当前进程。
说明:echo 内容 >> 文件名称 :将指定内容写在指定文件的末尾;
echo 内容 > 文件名称 :将指定内容覆盖文本中旧的内容;


4.2.6 mkdir


操作演示:

4.2.7 rmdir

操作演示:

A. 删除空目录


B.删除非空目录


C. 使用*通配符删除目录




4.2.8 rm



操作示例:


注意: 对于 rm -rf xxx 这样的指令,在执行的时候,一定要慎重,确认无误后再进行删除,避免误删。


4.3 拷贝移动命令


4.3.1 cp



注意事项:在linux下的⽂件中没有后缀,我们⼀般⾃⼰添加⼀个后缀 是为了可读性; **操作示例:


如果拷⻉的内容是目录,需要加上参数 -r
经典场景:我们做一些配置修改时,怕把原始的文件改错,那么一般
通过cp命令先备份一份,如果出问题,还可回滚;


4.3.2 mv

操作示例:

mv 命令既能够改名,又可以移动,具体是改名还是移动,系统会根据我们输入的参数进行判定(如果第二个参数dest是一个已存在的目录,将执行移动操作,其他情况都是改名)



4.4 打包压缩命令




操作示例: A. 打包

 


B. 打包并压缩


C. 解包


D. 解压


解压到指定⽬录,需要加上参数 -C



4.5 文本编辑命令


文本编辑的命令,主要包含两个: vi 和 vim,两个命令的用法类似,我们课程中主要讲解vim的使用。


4.5.1 vi&vim介绍
作用: vi命令是Linux系统提供的一个文本编辑工具,可以对文件内容进行编辑,类似于Windows中的记事本
语法: vi fileName
说明: 1). vim是从vi发展来的一个功能更加强大的文本编辑工具,编辑文件时可以对文本内容进行着色,方便我们对文件进行编辑处理,所以实际工作中vim更加常用。 2). 要使用vim命令,需要我们自己完成安装。可以使用下面的命令来完成安装: yum install vim

4.5.2 vim安装
命令: yum install vim

安装过程中,会有确认提示,此时输入 y,然后回⻋,继续安装:



4.5.3 vim使⽤
作用: 对文件内容进行编辑,vim其实就是一个文本编辑器 语法: vimfileName 说明: 1). 在使用vim命令编辑文件时,如果指定的文件存在则直接打开此文件。如果指定的文件不存在则新建文件。 2). vim在进行文本编辑时共分为三种模式,分别是 命令模式(Command mode),插入模式(Insert mode)和底行模式(Last line mode)。这三种模式之间可以相互切换。我们在使用vim时一定要注意我们当前所处的是哪种模式。

三种模式:

命令模式(默认)

插入模式 A. 插入模式下可以对文件内容进行编辑 B. 在命令模式下按下[i,a,o]任意一个,可以进入插入模式。进入插入模式后,下方会出现【insert】字样 C. 在插入模式下按下ESC键,回到命令模式
底行模式 A. 底行模式下可以通过命令对文件内容进行查找、显示行号、退出等操作 B. 在命令模式下按下[:,/]任意一个,可以进入底行模式 C. 通过/方式进入底行模式后,可以对文件内容进行查找 D.通过:方式进入底行模式后,可以输入wq(保存并退出)、q!(不保存退出)、set nu(显示行号)


操作示例:


4.6 查找命令


4.6.1 find

操作示例:


4.6.2 grep

操作示例:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/11721.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

DHTMLX Gantt入门使用教程【引入】:如何开始使用 dhtmlxGantt

DHTMLX Gantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表。可满足项目管理应用程序的大部分开发需求,具备完善的甘特图图表库,功能强大,价格便宜,提供丰富而灵活的JavaScript API接口,与各种服务器端技术&am…

Excel玩转自然语言查询

ChatGPT火出圈,人类被人工智能替代又成为热门话题。有人欢喜,有人忧,也有人不以为意,觉得离自己工作远着呢,比如现在是用Excel做报表,有本事你动动嘴就直接把Excel里面的数据查询出来啊。 你可别说&#xf…

【题解】P4055 [JSOI2009] 游戏

link 题目大意 题目说得比较清楚。 题解 前置知识:二分图最大匹配、基础博弈论。 每个点只能走一次的四联通点阵,可以想到二分图匹配。 将其套路地奇偶分点,相邻两点连边(显然不能为 #)。 先求一个最大匹配。 …

5G/V2X赛道「重启」

在提升高阶智能驾驶安全性和感知冗余能力的道路上,除了激光雷达、高精度地图及定位,还有一项技术可能即将掀起一场新的风暴。 就在今年3月,作为全球通信领域的年度风向标 — 2023世界移动通信大会(MWC)上,…

基于html+css的盒子展示6

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

第七回:如何使用GirdView Widget

文章目录概念介绍使用方法示例代码经验总结我们在上一章回中介绍了Image Widget,本章回中将介绍 GirdView这种Widget,闲话休提,让我们一起Talk Flutter吧。概念介绍 在Flutter中使用GirdView表示网格状的布局,类似日常办公中使用的Excel,它和…

win10彻底永久关闭自动更新【亲测有效】

一、禁用Windows Update服务 1、同时按下键盘 Win R,打开运行对话框,然后输入命令 services.msc ,点击下方的“确定”打开服务,如下图所示。 2、找到 Windows Update 这一项,并双击打开,如图所示。 3、右击…

MySQL-中间件mycat(二)

目录 🍁部署主从复制 🍁mycat读写分离 🍂修改配置文件 🍂设置balance与writeType 🍂设置switchType与slaveThreshold 🍂启动程序 🍂验证读写分离 🍁垂直拆分-分库 🍂实现…

openvpn (用户名密码模式)

目录 一、介绍 1、定义 2、原理 3、加密和身份验证 二、在centos 7.5上搭建openvpn 1、安装openvpn 和easy-rsa(该包用来制作ca证书) 2、配置/etc/openvpn/ 目录 3、创建服务端证书及key 4、创建客户端证书 5、把服务器端必要文件放到etc/openvpn/ 目录下…

融云出海赋能会干货回顾 | 用户增长、场景玩法、安全合规实用指南

近期,“纵浪潜海 2023 融云社交泛娱乐出海赋能会”在上海、广州相继举行。移步【融云全球互联网通信云】,回复【出海】获取PPT。 作为更专业的出海服务商,融云联合多家出海服务企业,从热门出海地区的特性洞察、玩法解决方案、技…

ElasticSearch索引文档写入和近实时搜索

一、基本概念 1.Segments In Lucene 众所周知,ElasticSearch存储的基本单元Shard,ES中一个Index可能分为多个Shard,事实上每个Shard都是一个Lucence的Index,并且每个Lucene Index由多个Segment组成,每个Segment事实上…

关键词词库制作-搜索词分析工具

关键词词库制作 关键词词库是一种帮助SEO和SEM优化的工具,它可以帮助您确定关键词的流行程度、竞争程度、搜索意图和其他相关信息等等。以下是一些关键词词库制作的方法: 收集关键词:首先需要收集相关的关键词,这可能涉及到您的业…

Transformer中的注意力机制及代码

文章目录1、简介2、原理2.1 什么是注意力机制2.2 注意力机制在NLP中解决了什么问题2.3 注意力机制公式解读2.4 注意力机制计算过程3、单头注意力机制与多头注意力机制4、代码4.1 代码14.2 代码21、简介 最近在学习transformer,首先学习了多头注意力机制&#xff0c…

[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-5 通关详解 (附靶机搭建教程)

🍬 博主介绍 👨‍🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 🎉点赞➕评论➕收藏 养成习…

[Data structure]队列环形队列 | 一文带你彻底搞懂队列和环形队列(内附详细图解和代码实现)

⭐作者介绍:大二本科网络工程专业在读,持续学习Java,努力输出优质文章 ⭐作者主页:逐梦苍穹 ⭐所属专栏:数据结构。数据结构专栏主要是在讲解原理的基础上拿Java实现 ⭐如果觉得文章写的不错,欢迎点个关注一…

淘宝/天猫店铺订单数据导出、销售报表、数据分析

最近有厂商提出想把天猫店铺的数据拿到后台ERP管理系统中,并能实现线下打印电子面单功能。接手这个需求按照度娘给的指引,申请天猫开发者帐号,但是。。。大厂把订单传送接口关了,只对厂商自研软件开放,还需要租用聚石塔…

「MongoDB」时序数据库和MongoDB第二部分-模式设计最佳实践

在上一篇博客文章时间序列数据与MongoDB:第一部分-简介中,我们介绍了时间序列数据的概念,然后介绍了一些可以用于帮助收集时间序列应用程序需求的发现问题。对这些问题的回答有助于指导支持大容量生产应用程序部署所需的模式和MongoDB数据库配…

[牛客101] 二叉树的层序遍历

这道题会考察很多知识点,这里专门进行详解 文章目录题目描述二. 题目分析完整代码题目描述 二. 题目分析 首先,我们会想到存储方式为二维数组.数组每一行存储一层的结点.怎么确定每一行要存储几个结点呢.由于节点与节点之间存在父子关系,所以,在存储某一层的结点时,就可以通过…

Python图像处理【12】基于小波变换执行图像去噪

基于小波变换执行图像去噪0. 前言1. 小波变换基础2. 小波变换去噪原理3. 使用 pywt 执行小波变换图像去噪4. 使用 scikit-image 执行小波变换图像去噪4.1 循环旋转技术4.2 改进图像去噪质量小结系列链接0. 前言 小波 (wavelets) 变换是表示和分析多分辨率图像的通用方法&#…

栈的实现及相关OJ题

🎉🎉🎉点进来你就是我的人了 博主主页:🙈🙈🙈戳一戳,欢迎大佬指点!人生格言:当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友一起加油喔🦾&am…