Linux常用操作命令及示例大全

文章目录

    • 1. Linux基础篇
      • 1.1 Linux介绍
      • 1.2 Linux和Unix的关系
        • 1) 内核层
        • 2) Shell层
        • 3) 应用层
      • 1.3 桥接、NAT、仅主机的区别
    • 2. Linux 实操篇 实用指令
      • 2.1 指定运行级别
        • 1)分类
        • 2) 切换到指定运行级别的指令
      • 2.2 帮助指令
        • 1) man指令
        • 2) help指令
      • 2.3 文件目录类
        • 1) pwd指令
        • 2)ls指令
        • 3)cd指令
        • 4)mkdir指令
        • 5)rmdir指令
        • 6)touch指令
        • 7)cp指令
        • 8)rm指令
        • 9)mv指令
        • 10)cat指令
        • 11)more指令
        • 12)less指令
        • 13)> 指令 和 >> 指令
        • 14)echo指令
        • 15)head指令
        • 16)tail指令
        • 17)ln指令
      • 2.4 时间日期类
        • 1)date指令 —— 用于显示
        • 2)date指令 —— 用于设置
        • 3)cal指令
      • 2.5 搜索查找类
        • 1)find指令
        • 2)locate指令
        • 3)grep指令和管道符号
      • 2.6 压缩解压类
        • 1)gzip/gunzip指令
        • 2)zip/unzip指令
        • 3)tar指令
        • 3)tar指令

1. Linux基础篇

1.1 Linux介绍

  • Linux怎么读:最通用的读法:/li’nʌks/(“里那克斯”)或/'li:nэks/(“里讷克斯”)或/li’nju:ks/(“里纽克斯”)。

  • Linux是一款操作系统,其特点是免费、开源、安全、高效、稳定,处理高并发非常强悍。现在很多的企业级项目都部署Linux/Unix服务器运行。

  • Linux的发行版本主要有:Red Hat Linux、Debian Linux、Ubuntu Linux、Suse Linux等。

  • Linux的起源:Linux 内核最初是由李纳斯•托瓦兹(Linus Torvalds)在赫尔辛基大学读书时出于个人爱好而编写的。

1.2 Linux和Unix的关系

  • UNIX 操作系统由肯•汤普森(Ken Thompson)和丹尼斯•里奇(Dennis Ritchie)发明。它的部分技术来源可追溯到从 1965 年开始的 Multics 工程计划,该计划由贝尔实验室、美国麻省理工学院和通用电气公司联合发起,目标是开发一种交互式的、具有多道程序处理能力的分时操作系统,以取代当时广泛使用的批处理操作系统。

  • 二者的关系:UNIX 是 Linux 的父亲。Linux 是一个类似 Unix 的操作系统,Unix 要早于 Linux,Linux 的初衷就是要替代 UNIX,并在功能和用户体验上进行优化,所以 Linux 模仿了 UNIX(但并没有抄袭 UNIX 的源码),使得 Linux 在外观和交互上与 UNIX 非常类似。

UNIX/Linux 系统可以粗糙地抽象为 3 个层次:底层是 UNIX/Linux 操作系统,即系统内核(Kernel);中间层是 Shell 层,即命令解释层;高层则是应用层。Linux常用操作命令及示例大全_第1张图片

1) 内核层

内核层是 UNIX/Linux 系统的核心和基础,它直接附着在硬件平台之上,控制和管理系统内各种资源(硬件资源和软件资源),有效地组织进程的运行,从而扩展硬件的功能,提高资源的利用效率,为用户提供方便、高效、安全、可靠的应用环境。

2) Shell层

Shell 层是与用户直接交互的界面。用户可以在提示符下输入命令行,由 Shell 解释执行并输出相应结果或者有关信息,所以我们也把 Shell 称作命令解释器,利用系统提供的丰富命令可以快捷而简便地完成许多工作。

3) 应用层

应用层提供基于 X Window 协议的图形环境。X Window 协议定义了一个系统所必须具备的功能(就如同 TCP/IP 是一个协议,定义软件所应具备的功能),可系统能满足此协议及符合 X 协会其他的规范,便可称为 X Window。

1.3 桥接、NAT、仅主机的区别

  • 桥接:桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机,所以两个网卡的IP地址也要设置为同一网段。

    所以当我们要在局域网使用虚拟机,对局域网其他pc提供服务时,例如提供ftp,提供ssh,提供http服务,那么就要选择桥接模式。
    Linux常用操作命令及示例大全_第2张图片

  • NAT:NAT模式中,就是让虚拟机借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。

    NAT模式中,虚拟机的网卡和物理网卡的网络,不在同一个网络,虚拟机的网卡,是在vmware提供的一个虚拟网络。
    Linux常用操作命令及示例大全_第3张图片

  • 仅主机: 在Host-Only模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是主机。其实Host-Only网络和NAT网络很相似,不同的地方就是Host-Only网络没有NAT服务,所以虚拟网络不能连接到Internet。

NAT和桥接的对比:

  • NAT模式和桥接模式虚拟机都可以上外网。
  • 由于NAT的网络在vmware提供的一个虚拟网络里,所以局域网其他主机是无法访问虚拟机的,而宿主机可以访问虚拟机,虚拟机可以访问局域网的所有主机,因为真实的局域网相对于NAT的虚拟网络,就是NAT的虚拟网络的外网。
  • 桥接模式下,多个虚拟机之间可以互相访问;NAT模式下,多个虚拟机之间也可以相互访问。

在VMware的3种网络模式中,NAT模式是最简单的,基本不需要手动配置IP地址等相关参数。至于桥接模式则需要额外的IP地址,如果是在内网环境中还很容易,如果是ADSL宽带就比较麻烦了,因为很难多出一个公网IP。

2. Linux 实操篇 实用指令

2.1 指定运行级别

1)分类
  • 0:关机
  • 1:单用户【可用于找回丢失密码】
  • 2:多用户状态无网络服务
  • 3:多用户状态有网络服务
  • 4:系统未使用保留给用户
  • 5:图形界面
  • 6:系统重启

常用的运行级别为3和5,修改默认的运行级别:/etc/inittab的id:5:initdefault这一行中的数字即为运行级别。不可将运行级别指定为6,否则系统将不断重启

2) 切换到指定运行级别的指令

语法:

init [0/1/2/3/4/5]

示例:

切换到单用户后再切换到图形界面。
Linux常用操作命令及示例大全_第4张图片

2.2 帮助指令

1) man指令

语法:

man [命令或配置文件](功能描述:获得帮助信息)

示例:

查看ls命令的帮助信息。
Linux常用操作命令及示例大全_第5张图片

2) help指令

语法:

help 命令 (功能描述:获得 shell 内置命令的帮助信息)

示例:

查看cd命令的帮助信息。
Linux常用操作命令及示例大全_第6张图片

2.3 文件目录类

1) pwd指令

语法:

pwd (功能描述:显示当前工作目录的绝对路径)

示例:

显示当前工作目录的绝对路径。
在这里插入图片描述

2)ls指令

语法:

ls [ 选 项] [目录或是文件]

  • -a :显示当前目录所有的文件和目录,包括隐藏的。
  • -l :以列表的方式显示信息。

示例:

查看当前目录的所有内容信息。
Linux常用操作命令及示例大全_第7张图片

3)cd指令

语法:

cd [参数] (功能描述:切换到指定目录)

示例:

使用绝对路径切换到 root 目录。在这里插入图片描述

4)mkdir指令

介绍:

mkdir 指令用于创建目录(make directory)

语法:

mkdir [选项] 要创建的目录

常用选项:

  • -p:创建多级目录

示例:

1.创建一个目录/home/dog
在这里插入图片描述

2.创建一个多级目录/home/animal/tiger
Linux常用操作命令及示例大全_第8张图片

5)rmdir指令

介绍:

rmdir 指令删除空目录

语法:

rmdir [选项] 要删除的空目录

注意:

需要删除非空目录时,需要使用rm -rf 要删除的目录名指令。

示例:

1.删除一个目录/home/dog。
在这里插入图片描述

2.删除一个非空目录/home/naimal。
在这里插入图片描述

6)touch指令

介绍:

touch指令创建空文件

语法:

touch 文件名称

示例:

创建一个空文件 hello.txt。
在这里插入图片描述

7)cp指令

介绍:

cp 指令拷贝文件到指定目录

语法:

cp [选项] source dest

常用选项:

  • -r:递归复制整个文件夹

示例:

1.将/home/aaa.txt拷贝到/home/bbb目录下[拷贝单个文件]
Linux常用操作命令及示例大全_第9张图片

2.递归复制整个文件夹,将/home/test整个目录拷贝到/home/test1目录[拷贝非空文件夹]Linux常用操作命令及示例大全_第10张图片

8)rm指令

介绍:

rm 指令移除【删除】文件或目录

语法:

rm [选项] 要删除的文件或目录

常用选项:

  • -r:递归删除整个文件夹
  • -f:强制删除不提示

示例:

1.将/home/aaa.txt删除。
Linux常用操作命令及示例大全_第11张图片

2.递归删除整个文件夹/home/bbb
在这里插入图片描述

9)mv指令

介绍:

mv 移动文件、目录或重命名

语法:

mv oldNameFile newNameFile (功能描述:重命名) mv /temp/movefile /targetFolder (功能描述:移动文件)

示例:

1.将/home/aaa.txt文件重新命名为pig.txt
在这里插入图片描述

2.将/home/pig.txt文件移动到/home目录下。
在这里插入图片描述

10)cat指令

介绍:

cat 查看文件内容,是以只读的方式打开

语法:

cat [选项] 要查看的文件

常用选项:

  • -n:显示行号

注意:

cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 | more

语法为:cat 文件名 | more [分页浏览]

示例:

1.显示/etc/profile文件内容,并显示行号。
Linux常用操作命令及示例大全_第12张图片

1.分页显示/etc/profile文件内容,并显示行号。
Linux常用操作命令及示例大全_第13张图片

在这里插入图片描述

11)more指令

介绍:

more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。

语法:

more 要查看的文件

常用快捷键:

操作 功能说明
空白键(space) 向下翻一页
Enter 向下翻一行
q 代表立刻离开more,不再显示该文件内容
Ctrl+F 向下滚动一屏
Ctrl+B 向上滚动一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号

示例:

采用more查看/etc/profile文件。
Linux常用操作命令及示例大全_第14张图片

12)less指令

介绍:

​ less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。

语法:

less 要查看的文件

常用快捷键:

操作 功能说明
空白键(space) 向下翻一页
[pagedown] 向下翻一页
[pageup] 向上翻一页
/子串 向下搜索[子串]的功能。n:向下查找;N:向上查找
?子串 向上搜索[子串]的功能。n:向上查找;N:向下查找
q 离开less这个程序
13)> 指令 和 >> 指令

介绍:

> 输出重定向 : 会将原来的文件的内容覆盖
>> 追加: 不会覆盖原来文件的内容,而是追加到文件的尾部

语法:

1)ls -l > 文件名 (内容覆盖)

2)ls -al >> 文件名 (内容追加)

示例:

1.把ls -l显示的内容覆盖写入到a.txt文件中,如果a.txt文件不存在,则创建该文件。
Linux常用操作命令及示例大全_第15张图片

2.把ls -l显示的内容追加写入到a.txt文件末尾中。
Linux常用操作命令及示例大全_第16张图片

14)echo指令

介绍:

echo 输出内容到控制台

语法:

echo [选项] [输出内容]

示例:

1.使用 echo 指令输出环境变量,输出当前的环境路径
在这里插入图片描述

2.使用echo指令输出hello,world!这段文字。
在这里插入图片描述

15)head指令

介绍:

head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容。

语法:

head 文件名 (功能描述:查看文件头 10 行内容)

head -n 5 文件名 (功能描述:查看文件头 5 行内容,5 可以是任意行数)

示例:

1.查看/etc/profile的前面五行代码。
Linux常用操作命令及示例大全_第17张图片

16)tail指令

介绍:

tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容。

语法:

1)tail 文件名 (功能描述:查看文件末尾10行的内容)

2)tail -n 5 文件名 (功能描述:查看文件后5行的内容,5可以是任意行数)

3)tail -f 文件名 (功能描述:实时追踪该文档的所有更新,工作中经常使用)

示例:

1.查看/etc/profile最后5行的代码。
Linux常用操作命令及示例大全_第18张图片

2.实时监控 mydate.txt , 看看到文件有变化时,是否看到, 实时的追加日期。
Linux常用操作命令及示例大全_第19张图片

在这里插入图片描述

17)ln指令

介绍:

​ ln指令叫做软链接也叫符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径。

语法:

ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)

注意:

删除一个软连接时应该用指令rm -rf [软连接名]

示例:

1.在/root目录下创建一个软连接linkToHome,连接到/home目录。
在这里插入图片描述

2.删除软连接linkToHome。
在这里插入图片描述

2.4 时间日期类

1)date指令 —— 用于显示

语法:

  • date (功能描述:显示当前时间)
  • date +%Y (功能描述:显示当前年份)
  • date +%m(功能描述:显示当前月份)
  • date +%d (功能描述:显示当前是哪一天)
  • date “+%Y-%m-%d %H:%M:%S”(功能描述:显示年月日时分秒)

示例:

1.显示当前时间信息。
在这里插入图片描述

2.显示当前时间年月日。
在这里插入图片描述

3.显示当前时间年月日时分秒。
在这里插入图片描述

2)date指令 —— 用于设置

语法:

date -s 字符串时间

示例:

设置当前系统时间为2021-5-20 5:20:20。
在这里插入图片描述

3)cal指令

cal指令查看日历

语法:

  • cal (功能描述:显示本月日历)
  • cal 年份 (功能描述:用于显示一整年的日历)

示例:

1.显示当前日历。
Linux常用操作命令及示例大全_第20张图片

2.显示一整年的日历。
Linux常用操作命令及示例大全_第21张图片

2.5 搜索查找类

1)find指令

介绍:

​ find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。

语法:

find [搜索范围] [选项]

常用选项:

选项 功能
-name<查询方式> 按照指定的文件名查找模式查找文件
-user<用户名> 查找属于指定用户名所有文件
-size<文件大小> 按照指定的文件大小查找文件

示例:

1.按文件名查找:根据名称查找/home目录下的hello.txt文件。
在这里插入图片描述

2.按拥有者查找:查找/opt目录下,用户名为nobody的文件。
在这里插入图片描述

3.按文件大小查找:查找整个linux系统下大于20m的文件。(+n大于 -n小于 =n等于)
Linux常用操作命令及示例大全_第22张图片

4.查找linux系统下,所有以txt结尾的文件。
在这里插入图片描述

2)locate指令

介绍:

​ locate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 时刻。

语法:

  • updatedb (功能描述:创建locate数据库)
  • locate 搜索文件名 (功能描述:搜索文件)

示例:

使用locate指令快速定位hello.txt文件所在的目录。
在这里插入图片描述

3)grep指令和管道符号

介绍:

​ grep 过滤查找 , 管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。

语法:

grep [选项] 查找内容 源文件

常用选项:

选项 功能
-n 显示匹配行及行号
-i 忽略字母大小写

示例:

hello.txt文件中查找yes所在行,并显示行号。
Linux常用操作命令及示例大全_第23张图片

2.6 压缩解压类

1)gzip/gunzip指令

介绍:

gzip 用于压缩文件, gunzip 用于解压

语法:

  • gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz 文件)
  • gunzip 文件.gz (功能描述:解压缩文件命令)

注意:

当我们使用 gzip 对文件进行压缩后,不会保留原来的文件。

示例:

1.gzip压缩:将/home目录下的hello.txt文件进行压缩。
Linux常用操作命令及示例大全_第24张图片

2.gunzip解压缩:将/home目录下的hello.txt文件进行解压缩。
Linux常用操作命令及示例大全_第25张图片

2)zip/unzip指令

介绍:

​ zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的。

语法:

  • zip [选项] XXX.zip 将要压缩的内容(功能描述:压缩文件和目录的命令)
  • unzip [选项] XXX.zip (功能描述:解压缩文件)

zip常用选项:

  • -r:递归压缩,即压缩目录

unzip常用选项:

  • -d<目录>:指定解压后文件的存放目录

示例:

1.将/home下的所有文件进行压缩,压缩后文件名为mypackage.zip
在这里插入图片描述

2.将mypackage.zip解压到/opt/tmp目录下。
在这里插入图片描述

3)tar指令

介绍:

tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件。

语法:

tar [选项] XXX.tar.gz 打包的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)

常用选项:

选项 功能
-c 产生 .tar 打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解包 .tar 文件

zip/unzip指令

介绍:

​ zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的。

语法:

  • zip [选项] XXX.zip 将要压缩的内容(功能描述:压缩文件和目录的命令)
  • unzip [选项] XXX.zip (功能描述:解压缩文件)

zip常用选项:

  • -r:递归压缩,即压缩目录

unzip常用选项:

  • -d<目录>:指定解压后文件的存放目录

示例:

1.将/home下的所有文件进行压缩,压缩后文件名为mypackage.zip
在这里插入图片描述

2.将mypackage.zip解压到/opt/tmp目录下。
在这里插入图片描述

3)tar指令

介绍:

tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件。

语法:

tar [选项] XXX.tar.gz 打包的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)

常用选项:

选项 功能
-c 产生 .tar 打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解包 .tar 文件

示例:

1.压缩多个文件,将/home/a1.txt/home/a2.txt压缩成a.tar.gz
Linux常用操作命令及示例大全_第26张图片

2.将a.tar.gz解压到当前目录。
Linux常用操作命令及示例大全_第27张图片

你可能感兴趣的:(linux,网络,操作系统,shell,运维)