当前位置: 首页 > news >正文

Linux 基础

一、Linux重点要记得知识点

1.1 目录

  • /dev:存放设备文件(块设备和字符设备)
  • /:根目录(Windows只有一个盘符C的情况下相当于C盘)
  • /root:系统管理员的目录,相当于Windows系统中的system
  • /bin:存放标准Linux的工具
  • /etc:存放系统配置方面的文件
  • /home:这里存放个人数据,相当于Windows系统中的users文件夹
  • /tmp:存放临时文件

可能不太全,但是目前会使用到的一些目录都在这里

1.2 绝对路径与相对路径

Linux中判断标准为是否以/(根目录)开头,Windows则是是否以盘符开头。

1.3 Linux常见的文件类型

注:普通文件类型包括纯文本类型,二进制文件,数据格式文件

文件类型以及其对应字符表示:
- :普通文件
d :目录文件
c :字符设备文件
b :块设备文件
s :套接字文件
p :管道文件
l :符号链接文件

1.4 文件访问者的分类

  • root用户:对系统拥有完全控制权,可以完成所有操作。#表示
  • 普通用户:通常只能访问自己的文件和一些系统资源。$表示

对于文件或目录,Linux有:

u(文件所有者)、g(文件所有者的所属组)、o(其他用户)、a(所有用户)

1.5 Linux 三种权限位

权限位包括读(r)、写(w)和执行(x),保持固定的rwx位置,若没有权限则使用(-)。

要注意的是:r代表4、w代表2、x代表1、-代表0。(也就是所谓的八进制,但这里不涉及进位,就可以简单的把它理解为十进制的加法)例如,rwx = 4+2+1=7;r-x=4+0+1=5。以此类推,🤔就像 百位+十位+个位 的样子。而且他们一定是每三个为一组的。
image
如:第三行信息可以看成 aa(最后一列)这个文件是文本文件(-)所有者是root(第三列),文件所属的组是root(第四列),具有一个链接数(第二列),所有者的权限为rwx,所有者所属的组权限为--x,其他用户的权限为--x,有40字节(第五列)最后修改时间为Oct 15 15:03。

1.6 用户和用户组

这就相当于Windows里的组和用户,方便操作和管理。

1.7 ~的含义

在root用户时,表示的是/

在普通用户时,表示的是/test/用户名

1.8 用户和用户组密码

用户密码存放在/etc/shadow

用户组密码存放在/etc/gshadow

用户配置文件存放在/etc/passwd

用户组存放在/etc/group

二、Linux 命令

注意:Linux中参数以及命令之间是可以组合一起使用的,要达到什么效果需要自己不断摸索和完善

2.1 ls命令

用来显示文件和子目录,其参数含义为:

  • -a 显示所有文件(含隐藏文件)
  • -l 以列表的形式展现
  • -h 以KB,MB等显示文件大小,方便读取

注意:lh一般同时使用
image

image

2.2 file命令

用来查看文件类型,参数使用率不高

image

2.3 cd命令

用于切换路径
image

和通配符>组合使用可以创建文件

image

image

2.4 rm命令

用于删除目录,参数如下:

  • -r:递归
  • -f:删除不询问

image

实际工作中不建议使用-rf

2.5 mv命令

用于改文件名

image

2.6 cp命令

复制文件或目录,参数如下:

  • -r:递归,用于复制目录

image

image

2.7 pwd命令

查询当前路径

image

2.8 touch 命令

用于创建文件,可同时创建多个

image

2.9 echo命令

输出写入的字符或脚本,参数如下:

  • -e:表示对于转义字符按对应的方式进行处理

对于一些常用转义字符(如果有补充可以自行添加)

\t 水平制表符,就是写代码的时候的tab键
\n 换行符
\xhh 十六进制ASCii码表输出字符,例如\x61[应该大概感觉用的可能性不大]

image

image

注意:>表示覆盖或写入;>>表示追加或写入

2.10 mkdir命令

用于创建目录,其参数如下:

  • -p:用于创建目录树
  • -n:显示行号

image

image

2.11 cat命令

合并或显示文件内容

image

image

注意:与cd相似,可以通过cat>创建文件

image

2.12 more命令

分页显示文件内容。一般与|一起使用,实现分页效果,参数如下:

  • -数字:每页显示多少行

image

2.13 less命令

一般用于查找,同样的可以与|一起使用,参数如下:

  • -i:搜索时忽略大小写

image

image

回车后,会高亮显示

image

2.14 tail命令

用来显示结尾期望数量的文字块。(太抽象了,感觉可以当成,对于一个循环程序,用于将最后一行追加到之前的文本后,举个例子)

image

注意:

jobs查看后台任务状态

fg 数字:调取任务到前台

bg 数字:将暂停的任务在后台运行

2.15 grep命令

用来搜索匹配的字符,其参数如下:

  • -c:计算符合匹配的字符串的行数
  • -f:从文件A中找出与文件B相同的字符
  • -n:在现实包含匹配字符串的行之前,标示处该行的行号

image

image

image

image

2.16 find命令

命令用于查找符合条件的文件和目录,其参数如下:

  • -exec:用于在找到的文件上执行指定的命令
  • -type [文件类型]:只寻找符合指定的文件类型的文件,要注意的是在这里 f 表示普通文件
  • -name:指定字符串作为寻找文件或目录的范本样式
  • -iname:忽略大小写
  • -perm:符合权限
  • ! -perm:不符合权限

image

image

image

image

image

2.17 bzip2命令

将文件压缩成 bz2 格式,其参数如下:

  • -z:进行强行压缩
  • -d:解压
  • -k:压缩后保持原文件

image

image

image

2.18 gzip命令

gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处 “.gz” 扩展名。其参数如下:

  • -d:解开压缩文件
  • -f:强行压缩文件
  • -N:保存原来的文件名称及时间戳记
  • -r:递归,将指定目录下的所有文件及子目录一并处理

image

image

image

2.19 tar命令

用来打包备份,其参数如下:

  • -C[大写C]:指定tar命令的工作目录
  • -c:建立新的目标包
  • -f:指定包的文件名(必须含有)
  • -x:解压
  • -j:再创建文件后使用bzip2算法进行压缩解压
  • -z:用gzip压缩进行压缩或解压

image

image

image

2.20 service命令

使用 service 指令,查看,关闭,启动,其参数如下:

  • stop 暂停
  • start 启动
  • restart 重启
  • status 查看
  • reload 重新加载

格式:service 服务 参数

如:service firewalld stop

2.21 systemctl 命令

使用 systemctl 指令,查看,关闭,启动,其参数如下

start:立刻启动后面接的 'unit'
stop:立刻关闭后面接的 'unit'
restart:立刻关闭后启动后面接的 'unit',亦即执行 stop 再 start 的意思
reload:不关闭 'unit' 的情况下,重新载入配置文件,让设置生效
enable:设置下次开机时,后面接的 'unit' 会被启动
disable:设置下次开机时,后面接的 'unit' 不会被启动
mask:注销 'unit',注销后你就无法启动这个 'unit' 了。
unmask:取消对 'unit' 的注销。

格式:systemctl 参数 服务

如:systemctl stop firewalld

2.22 cut 命令

在文件中负责剪切数据用的。其参数如下:

  • -d:分隔符,按照指定分隔符分割列。与 -f 一起使用
  • -f:依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思(列号,提取第几列)

image

2.23 ifconfig 命令

查看当前Linux的IP信息。

image

  • ifconfig 网卡 down :关闭某网卡
  • ifconfig 网卡 up:开启某网卡
  • ifup 网卡:开启某网卡
  • idown 网卡:关闭某网卡

注意:不能混合使用,为一一对应关系

2.24 nslookup 命令

域名解析

image

2.25 ping 命令

测试连通性

image

2.26 chmod 命令

修改权限

语法:chmod 权限 文件

image

2.27 其他

2.27.1 w命令

显示系统当前登录的用户信息

2.27.2 who 命令

用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者ID、使用的终端机、从哪边连上来的、上线时间

2.27.3 whoami 命令

查看当前是哪个用户

2.28 ps 命令

用于查看进程,其参数如下:

  • -aux :以更详细的内容展示
  • -ef:以全格式进行展示

image

image

2.29 top 命令

实时监控进程

image

 # top 命令的交互选项:P按键  #根据CPU使用率从大到小排序M按键  #根据内存使用率从大到小排序N按键  #根据PIN从大到小排序T按键  #根据进程使用CPU累计运算的时间排序q按键  #退出top 

2.30 lsof 命令

列出系统中所有打开的文件及其相关联的进程信息,其参数如下

  • -i :指定路由,协议或端口
  • -p:指定PID

image

image

2.31 kill -9

杀死进程

image

2.32 pkill -9

批量杀死某进程,其参数如下

  • -t:提出指定设备

image

2.33 netstat 命令

用于显示网络连接、路由表、接口统计信息等,其参数如下:

  • -tunlp:查看所有TCP和UDP端口的使用情况

image

三、Linux的通配符

* :通配符,代表任意字符(0到多个)
?:通配符,代表一个字符
# :注释
\ :转义符号,将特殊字符或通配符还原成一般符号
| :分割两个管线命令的界定
; :连续性命令的界定
~ :用户的根目录
$ :变量前需要加的变量值
! :逻辑运算中的“非”
/ :路径分割符号
> :输出导向,为“取代”
>>:输出导向,“累加”
' :不具有变量置换功能
" :具有变量置换功能
` :quote符号,两个 ` 中间为可以先执行的指令
() :中间为子shell的起始与结束
[] :中间为字符组合
{} :中间为命令区块组合
& :表示程序要在后台运行
&& :当该符号前一个指令执行成功时,执行后一个指令
| :管道符,表示上一条命令的输出,作为下一条命令参数进行传递
|| :表示前一条命令执行成功时,后一条命令不再执行;如果前面一条命令执行失败,后面的命令再执行

四、Linux系统下的常用快捷键

Ctrl+C:终止当前任务
Ctrl+D:输入结束
Ctrl+U:在提示符下,将整行命令删除
Ctrl+Z:暂停当前任务

五、用户管理

useradd 用户名  #创建用户
passwd 用户名   #修改密码
userdel -rf 用户名   #强制删除用户并删除用户有关文件

六、用户组管理

groupadd 用户组   #创建用户组
groupdell 用户组  #删除用户组
usermod -G 用户组 用户名  #将某个用户添加到用户组中
usermod -G " " 用户名  #保留用户名本组
#例如:usermod -G ""  mz   #保留mz组,其余所在组全删除
gpasswd -d 用户名 用户组 #将用户移除用户组

七、vim

命令模式 => 插入模式:i
命令模式 => 底行模式:shitf + ; 【 此处不用纠结:因为键盘输入:shift + ; = : 】
插入 / 底行模式 => 命令模式:Esc

命令模式:

光标移动:

  • h 左移,j 下移,k 上移,l 右移。
  • 0 移动到行首,$ 移动到行尾。
  • gg 移动到文件开头,G 移动到文件结尾。

编辑操作:

  • x 删除光标所在字符。
  • dd 删除当前行,ndd 删除接下来的 n 行。
  • yy 复制当前行,nyy 复制接下来的 n 行。
  • p 粘贴到光标后,P 粘贴到光标前。

查找与替换:

  • /word 向下查找 "word",按 n 查找下一个,按 N 查找上一个。
  • :%s/old/new/gc 全局替换 "old" 为 "new",每次替换前询问确认。

保存与退出:

  • :w 保存文件。
  • :q! 强制退出不保存。
  • :wq 保存并退出。

八、网络配置(配置静态路由)

目的:方便管理和监控,并且很可靠,满足充当服务器时的需求。

配置过程:所有的配置文件都被放在了/etc文件中,所以我们要在etc中寻找我们要更改的网络配置,其完整目录为/etc/sysconfig/network-scripts。进入该目录中,进行查看文件

image

选中我们的网卡,即ens33,进入vim编辑模式,进行更改,在更改前,记得要备份一份源文件,防止被改坏后无法复原。按照方块所示进行添加或者更改。

image

image

http://www.hskmm.com/?act=detail&tid=32578

相关文章:

  • P2605 [ZJOI2010] 基站选址
  • NVIDIA Jetson AGX Xavier刷机教程
  • 洛谷p1462-通往奥格瑞码道路
  • 详细介绍:VR 太阳光参数与快速渲染
  • 位运算中没用的小技巧
  • 第六周
  • 超越基础:SightAI 智能路由与多模型选择实战 - sight
  • [Vulhub靶机]JARBAS靶机渗透
  • 10月16号
  • CF622D 题解
  • vue学习的总结
  • 最小二乘问题详解5:非线性最小二乘求解实例
  • AlexNet
  • 【28】C# WinForm入门到精通 ——多文档窗体MDI【属性、强大的方法、实例、源码】【多窗口重叠、水平平铺、垂直平铺、窗体传值】
  • 第五周预习
  • 2025 非标门/铸铝门/别墅大门厂家推荐榜:聚焦品质与服务的实力之选
  • 工业数字化未来:IT与OT融合实践
  • AI安全新威胁:提示注入与模型中毒攻击深度解析
  • 神经网络入门研读报告
  • 阅读《记录一类分治方法》笔记
  • CF2140E2
  • Codeforces 380E Sereja and Dividing 题解 [ 紫 ] [ 线段树 ] [ 贪心 ] [ 数学 ]
  • JPA教程
  • 夜莺监控设计思考(二)边缘机房架构思考
  • 搜维尔科技:具有人手级别抓握和操纵能力的灵巧手
  • v-model 的实现原理
  • 防塔游戏单机 王国保卫战全集下载 1~5部全系列MOD DLC修改版 安卓+ios+PC电脑版
  • 德州东站换乘攻略(仅供参考)
  • 第十六篇
  • Date 2025.10.6