Linux介绍和命令使用

目录

目录

一、Linux简介

1.1 主流操作系统

1.2 Linux 发展历史

1.3 Linux系统版本

二、Linux安装

三、Linux 目录结构

四、Linux常用命令

4.1 基础常用命令说明

4.2 Linux 命令使用技巧

4.3 Linux 命令格式

4.4 进阶重点常用命令

4.4.1 拷贝移动命令

4.4.2 打包压缩命令

4.4.3 文本编辑命令

4.4.4 查找命令

4.4.5 查看系统的进程命令

4.4.6 管道命令(|)


一、Linux简介

1.1 主流操作系统

不同领域的主流操作系统,主要分为以下这么几类: 桌面操作系统、服务器操作系统、移动设备操作系统、嵌入式操作系统。在这些领域中,先看看下列具有代表性的操作系统:

  • 桌面操作系统

操作系统

特点

Windows

用户数量最多

MacOS

操作体验好,办公人士首选

Linux

用户数量少(桌面操作系统,Linux使用较少)

  • 服务器操作系统

操作系统

特点

Unix

安全、稳定、付费

Linux   (linux is not unix)

安全、稳定、免费、占有率高

Windows Server

付费、占有率低

  • 移动设备操作系统

操作系统

特点

Android

基于 Linux 、开源,主要用于智能手机、平板电脑和智能电视

IOS

苹果公司开发、不开源,用于苹果公司的产品,例如:iPhone、 iPad

  • 嵌入式操作系统

操作系统

特点

Linux

机顶盒、路由器、交换机

1.2 Linux 发展历史

Linux系统诞生于1991年,由Linus Torvalds创建并发布第一个内核版本,随后与GNU项目合作形成完整操作系统。发行版如Slackware、Debian、Red Hat相继出现,开源社区的积极贡献和商业支持推动了Linux在各领域的广泛应用。Linux发展的关键人物和关键事件如下:

  1. Linus Torvalds(林纳斯·托瓦兹):Linus Torvalds 是 Linux 内核的创始人,他于1991年开始编写 Linux 内核,并于同年8月发布了第一个版本。他的工作和领导使得 Linux 内核得以迅速发展。
  2. GNU 项目:在Linux之前,GNU项目早已开始了自由操作系统的开发。1983年,理查德·斯托曼创立了GNU项目,旨在创建一个完全由自由软件组成的操作系统。尽管GNU项目提供了大量的用户空间工具和库,但缺乏一个完整的内核。
  3. Linux 发布:1991年,Linus Torvalds发布了第一个 Linux 内核的版本,即0.01版,它只能在个人计算机上运行。随着时间的推移,Linux 内核逐渐发展壮大,添加了更多的功能和支持。
  4. GNU/Linux 合作:GNU 项目和 Linux 内核的合作成为 Linux 发展历史上的一个重要转折点。GNU 项目的用户空间工具和库与 Linux 内核相结合,形成了完整的操作系统。因此,人们通常将 Linux 系统称为 GNU/Linux。
  5. 发行版的出现:1993年,第一个 Linux 发行版——Slackware 诞生,其后出现了诸如 Debian、Red Hat 等各种不同的发行版,为用户提供了更多的选择和便利。
  6. 开源社区的发展:Linux 的成功离不开开源社区的贡献和支持。众多开发者和志愿者积极参与 Linux 内核和相关项目的开发、测试和维护,为 Linux 系统的不断改进和发展贡献了力量。
  7. 商业支持:随着 Linux 在服务器领域的日益普及,一些公司开始提供与 Linux 相关的商业支持和服务,如 Red Hat、SUSE 等,推动了 Linux 在企业市场的发展。
  8. 广泛应用:Linux 系统已经被广泛应用于服务器、个人计算机、超级计算机、嵌入式系统、移动设备等各个领域,成为当今世界上最流行的操作系统之一。
1.3 Linux系统版本

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

1). 内核版(托瓦兹团队研发的产品称为内核版)

  • 由Linus Torvalds及其团队开发、维护
  • 免费、开源
  • 负责控制硬件

2). 发行版(基于内核版进行升级改造)

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

通常使用的Linux操作系统,实际上选择的是Linux的发行版本。在linux系统中,有各种各样的发行版本,下面罗列部分常见的版本:

发行版本

Logo

特点

Ubuntu

以桌面应用为主

RedHat

应用最广泛、收费

CentOS

RedHat的社区版、免费

openSUSE

对个人完全免费、图形界面华丽

Fedora

功能完备、快速更新、免费

红旗Linux

北京中科红旗软件技术有限公司开发

二、Linux安装

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

方式

概述

场景

物理机安装

直接将操作系统安装到服务器硬件

企业开发中,使用的服务器基本都是采用这种方式

虚拟机安装

通过虚拟机软件安装

在学习阶段,没有自己服务器,而又需要学Linux,就可以安装在虚拟机上(或者购买云服务商的云服务器)

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能、运行在完全隔离环境中的完整计算机系统。常用虚拟机软件:

  • VMWare
  • VirtualBox
  • VMLite WorkStation
  • Qemu
  • HopeddotVOS

三、Linux 目录结构

在Linux系统中,存在目录概念,但Linux的目录结构和Windows的目录结构是存在比较多的差异。在Windows目录下,是一个一个的盘符(C盘、D盘、E盘),目录是归属于某一个盘符的。而Linux系统中的目录有两个特点:

  • / 是所有目录的顶点
  • 目录结构像一颗倒挂的树

Linux 和 Windows的目录结构对比:

Linux的目录结构如下:

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

编号

目录

含义

1

/bin

存放二进制可执行文件

2

/boot

存放系统引导时使用的各种文件

3

/dev

存放设备文件

4

/etc

存放系统配置文件,  比如:安装jdk,安装maven、配置环境变量

5

/home

用户的主目录,存放用户的个人资料的。比如:linux是一个多用户的操作系统,创建了zhangsan用户,那么在home目录里面有zhangsan文件夹。

6

/lib

存放程序运行所需的共享库和内核模块

7

/opt

额外安装的可选应用程序包所放置的位置

8

/root

超级管理员的主目录

9

/sbin

存放二进制可执行文件,只有root用户才能访问

10

/tmp

存放临时文件

11

/usr

安装软件主要存储在该目录中

12

/var

存放运行时需要改变数据的文件,例如日志文件

四、Linux常用命令

4.1 基础常用命令说明

Linux系统中,最常用的命令包含以下几个:

序号

命令

对应英文

作用

1

ls [目录名]

list

查看当前目录下的内容

2

pwd

print work directory

查看当前所在目录

3

cd [目录名]

change directory

切换目录

4

touch [文件名]

touch

如果文件不存在,创建文件

5

mkdir [目录名]

make directory

创建目录

6

rm [文件名]

remove

删除指定文件

  • ls

指令解读:

ls 查看当前目录下的内容(文件及目录) list列表缩写

ls / 查看指定目录(/)下的内容

ls -a 查看所有内容,包含隐藏的内容 a是all的缩写

ls -al 列表方式查看

ll -a 列表方式查看,简洁方式 ll 与 ls -l 相等

  • pwd

指令解读:

pwd 查看当前所在目录 print work directory

  • touch

指令解读:

touch 1.txt 创建文件1.txt

touch 2.txt 3.txt 4.txt 一次性创建文件2.txt,3.txt,3.txt

  • mkdir

指令解读:

mkdir 01 创建文件夹01

mkdir aa bb cc 一次性创建多个目录

mkdir -p dd/ff 如果父目录dd不存在就先创建父目录dd,之后创建子目录ff

  • rm

指令解读:

rm 4.txt 删除文件 (删除文件时,需要确认,输入y, 代表确定)

rm -f 4.txt 强制删除,不会问是否删除

rm 目录名 默认忽略这个命令,不会删除

rm -rf 目录名 recusion是r的缩写,代表递归,这样就可以递归删除当前目录下子文件和子目录

rm -rf /* 删除磁盘上所有资源,千万注意不要使用,否则需要重装系统

4.2 Linux 命令使用技巧

在我们使用Linux系统命令时,可以使用以下几个技巧:

1). Tab键自动补全

2). 连续两次Tab键,给出操作提示

3). 使用上下箭头快速调出曾经使用过的命令

4). 使用clear命令或者Ctrl+l快捷键实现清屏

4.3 Linux 命令格式

command [-options] [parameter]

说明:

command: 命令名

[-options]: 选项,可用来对命令进行控制,也可以省略

[parameter]: 传给命令的参数,可以是零个、一个或者多个

注意:

[ ] 代表可选

命令名、选项、参数之间有空格进行分隔

4.4 进阶重点常用命令
4.4.1 拷贝移动命令

命令:cp

作用: 用于复制文件或目录

语法: cp [-r] source dest

copy缩写

说明:

-r: 如果复制的是目录需要使用此选项,此时将复制该目录下所有的子目录和文件

举例:

cp hello.txt itcast/ 将hello.txt复制到itcast目录中

cp hello.txt ./hi.txt 将hello.txt复制到当前目录,并改名为hi.txt, ./代表当前目录

cp -r itcast/ ./itheima/ 将itcast目录和目录下所有文件复制到itheima目录下

cp -r itcast/* ./itheima/ 将itcast目录下所有文件复制到itheima目录下

命令:mv

作用: 剪切,重命名(如果目标位置已存在就是移动剪切,目标位置不存在就是重命名)

语法: mv source dest

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

举例:

mv hello.txt hi.txt 将hello.txt改名为hi.txt

mv hi.txt itheima/ 将文件hi.txt移动到itheima目录中

mv hi.txt itheima/hello.txt 将hi.txt移动到itheima目录中,并改名为hello.txt

mv itcast/ itheima/ 如果itheima目录不存在,将itcast目录改名为itheima

mv itcast/ itheima/ 如果itheima目录存在,将itcast目录移动到itheima目录中

4.4.2 打包压缩命令

压缩文件说明:

常用windows压缩文件格式: xxx.rar xxx.zip xxx.7z

常用linux压缩文件格式:

① 打包文件: xxx.tar 打包就是将多个资源目录或文件困在一起

② 打包并压缩文件: xxx.tar.gz 打包就是将多个资源目录或文件困在一起,并且会将数据压缩

名称:tar

作用: 对文件进行打包、解包、压缩、解压

语法: tar [-zcxvf] fileName [files]

包文件后缀为.tar表示只是完成了打包,并没有压缩(归档文件)

包文件后缀为.tar.gz表示打包的同时还进行了压缩

说明:

-z: z代表的是gzip,通过gzip命令处理文件,gzip可以对文件压缩或者解压

-c: c代表的是create,即创建新的打包文件

-x: x代表的是extract,实现从包文件中还原文件(解压)

-v: v代表的是verbose,显示命令的执行过程

-f: f代表的是filename,用于指定包文件的名称

举例:

打包

tar -cvf hello.tar ./* 将当前目录下所有文件打包,打包后的文件名为hello.tar

打包并压缩

tar -cvzf hello.tar.gz ./* 将当前目录下所有文件打包并压缩,打包后的文件名为hello.tar.gz

解包

tar -xvf hello.tar 将hello.tar文件进行解包,并将解包后的文件放在当前目录

tar -xvf hello.tar.gz 将hello.tar.gz文件进行解压,并将解压后的文件放在当前目录

tar -xvf hello.tar.gz -C /usr/local 将hello.tar.gz文件进行解压,并将解压后的文件放在/usr/local目录

4.4.3 文本编辑命令
  • 介绍

文本编辑的命令,主要包含两个: vi 和 vim,两个命令的用法类似。

vi命令是Linux系统提供的一个文本编辑工具,可以对文件内容进行编辑,类似于Windows中的记事本。它的语法是:vi fileName

说明:

1). vim是从vi发展来的一个功能更加强大的文本编辑工具,编辑文件时可以对文本内容进行着色,方便对文件进行编辑处理,所以实际工作中vim更加常用。

2). 要使用vim命令,需要我们自己完成安装。可以使用下面的命令来完成安装:`yum install vim`

  • vim使用

vim其实就是一个文本编辑器语法: vim fileName

说明:

1). 在使用vim命令编辑文件时,如果指定的文件存在则直接打开此文件。如果指定的文件不存在则新建文件。

2). vim在进行文本编辑时共分为三种模式,分别是 命令模式(Command mode),插入模式(Insert mode)和底行模式(Last line mode)。这三种模式之间可以相互切换。在使用vim时一定要注意当前所处的是哪种模式。

  • 三种模式

① 命令模式(不可编辑内容),命令模式下可以查看文件内容、搜索文本内容.

命令模式指令

含义

i 或 a 或 o

进入插入模式,i是光标前面插入,a是光标后面插入,o是在下一行插入

gg

定位到文本内容的第一行第一个字符

GG

定位到文本内容的最后一行

yy

复制当前行

p

粘贴当前行

dd

删除光标所在行的数据

ndd

删除当前光标所在行及之后的n行数据

u

撤销操作

shift+zz

保存并退出

/搜索的内容

在当前文件中搜索内容,符合的内容会高亮

② 插入模式

A. 插入模式下可以对文件内容进行编辑
B. 在命令模式下按下[i,a,o]任意一个,可以进入插入模式。进入插入模式后,下方会出现【insert】字样
C. 在插入模式下按下ESC键,回到命令模式

③ 底行模式

  1. 按下esc回到命令模式
  2. 在命令模式的基础上按下 shift+:
  3. 按下保存退出: :wq(保存退出)   :q!(强制退出不保存)

底行模式命令

含义

:wq

保存并退出  write  quit

:q!

不保存强制退出

:set nu

显示行号   number

:set nonu

取消行号显示

:n

定位到第n行, 如 :10 就是定位到第10行

④ 模式切换图

命令模式(查看内容 /搜索的内容) -------按下 :i a o ----> 插入模式(编辑文件) ------esc--->命令模式------->shift + : --------> 底行模式(保存退出 wq)

4.4.4 查找命令

名称:find

作用: 在指定目录下查找文件

语法: find dirName -option fileName

举例:

find . –name "*.java" 在当前目录及其子目录下查找.java结尾文件

find /itcast -name "*.java" 在/itcast目录及其子目录下查找.java结尾的文件

名称:grep

作用: 从指定文件中查找指定的文本内容,并且返回查找到的对应行数据

语法: grep word fileName

举例:

grep Hello HelloWorld.java 查找HelloWorld.java文件中出现的Hello字符串的位置

grep hello *.java 查找当前目录中所有.java结尾的文件中包含hello字符串的位置

grep -n hello Itheima.java -n显示行号

grep -ni hello Itheima.java -i 忽略大小写匹配内容

4.4.5 查看系统的进程命令
ps -ef    系统的所有的进程都展示出来  processps -aux 查询所有进行信息,并显示每个进程cpu耗用,内存耗用top 查看整体的内存耗用杀死进程kill -9(强制杀死)|-2(温和杀死)  进程id号-2 会先让程序保存在进行退出, 温和的退出-15 通知程序进行安全、干净的退出。退出前做一些准备工作:释放资源,临时文件清理。优雅的退出。但是-2 和 -15 在操作系统后台进程时系统可能认为是不良操作会导致退出失败。-9 强制退出。一定会退出

4.4.6 管道命令(|)
作用: 上一个命令的结果提供给下一个命令去使用。语法:命令1 | 命令2 | 命令3 ...

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3D力导向树插件-3d-force-graph学习002

一、实现效果:节点文字同时展示 节点显示不同颜色节点盒label文字并存节点上添加点击事件 二、利用插件:CSS2DRenderer 提示:以下引入文件均可在安装完3d-force-graph的安装包里找到 三、关键代码 提示:模拟数据可按如下格式填…

Open CASCADE学习|求圆的切线与切点

在几何学中,一个圆的切线被定义为与圆相切于一点的直线,而该点被称为切点。这意味着切线在切点处与圆仅有一个交点,并且在该点处,切线的方向与圆的半径垂直。 以下是关于圆的切线和切点的一些重要性质: 切线与半径的…

用于电机控制应用的动态制动电阻器了解下

大型直流和交流电机驱动器通常提供用于安装制动电阻器的端子。这些电阻器是什么,它们如何减慢机器的速度?必须考虑哪些危险和注意事项? 机械能 任何运动中的机器都具有动能。这种能量是一些储存的势能被“倾倒”到电机或执行器中的结果&…

ArcGIS学习(六)地理数据库

ArcGIS学习(六)地理数据库 上个任务我们讲了一个非常重要的知识点一一坐标系。这个任务我们带来另外一个很重要的知识点一一地理数据库。 地理数据库的内容相比于坐标系简单很多! 首先,先让我们来学习下地理数据库的理论。 ArcGIS 中的地理数据库(Geodatabase)是一个用…

FPGA_vga显示

一 VGA 1.1 VGA VGA是视频图像阵列,是一种使用模拟信号进行视频传输的标准协议。 1.2 VGA接引脚定义 VGA分公母两种,RGB显示标准。 1.3 VGA显示器 VGA显示器采用图像扫描的方式进行图像显示,将构成图像的像素点,在行同步信号…

Android中的MVVM

演变 开发常用的框架包括MVC、MVP和本文的MVVM,三种框架都是为了分离ui界面和处理逻辑而出现的框架模式。mvp、mvvm都由mvc演化而来,他们不属于某种语言的框架,当存在ui页面和逻辑代码时,我们就可以使用这三种模式。 model和vie…

【Linux】vim的基本操作与配置(上)

Hello everybody!今天我们要进入vim的讲解了。学会了vim,咱们就可以在Linux系统上做一些简单的编程啦! 那么废话不多说,咱们直接进入正题! 1.初识vim vim是一款多模式的文本编辑器,可以对一个文件进行编辑操作。 它一共有三个模…

分享一下 uniapp 打包安卓apk

首先需要安装 Java 环境,这里就不做解释了 第二步:打开 mac 终端 / cmd 命令行工具 使用keytool -genkey命令生成证书 keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore *testalias 是证书别名&am…

学生管理系统(javaSE第一阶段项目)

JavaSE第一阶段项目_学生管理系统 1.项目介绍 此项目是JavaSE第一阶段的项目,主要完成学生对象在数组中的增删改查,大家可以在此项目中发挥自己的想象力做完善,添加其他功能等操作,但是重点仍然是咱们前9个模块的知识点2.项目展示 2.1.添加功能 2.2.查看功能 2.3.修改功能 2…

数据库管理-第145期 最强Oracle监控EMCC深入使用-02(20240205)

数据库管理145期 2024-02-05 数据库管理-第145期 最强Oracle监控EMCC深入使用-02(20240205)1 监控方式2 度量配置3 阻塞4 DG监控总结 数据库管理-第145期 最强Oracle监控EMCC深入使用-02(20240205) 作者:胖头鱼的鱼缸&…

【C#】.net core 6.0 设置根目录下某个文件夹可访问,访问创建的图片等资源

欢迎来到《小5讲堂》 大家好,我是全栈小5。 这是《C#》系列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握。…

移动光猫gs3101超级密码及改桥接模式教程

文章目录 超级管理员账号改桥接模式路由器连接光猫,PPPOE拨号即可!附录:如果需要改桥接的话不知道拨号密码咋办打开光猫Telnet功能Telnet 登录 参考文章 移动光猫吉比特GS3101超级账号获取更改桥接 移动光猫gs3101超级密码及改桥接模式教程 …