最新资讯

  • Linux系统常用命令详解

Linux系统常用命令详解

2025-04-28 04:01:03 0 阅读

文章目录

  • 一、Linux概述
    • 1、常见的操作系统
    • 2、Linux发展史
    • 3、Linux目录结构
    • 4、终端操作快捷键
  • 二、文件和目录操作
    • 1、pwd - 显示当前目录
    • 2、cd - 切换目录
    • 3、ls - 列出目录内容
    • 4、mkdir - 创建目录
    • 5、touch - 创建空文件
    • 6、cp - 复制文件或目录
    • 7、mv - 移动或重命名文件
    • 8、rm - 删除文件或目录
    • 9、tree - 树形结构显示目录内容
    • 10、软链接与硬链接
  • 三、文件内容编辑
    • 1、vi、vim、view概述
    • 2、命令模式
    • 3、编辑模式
  • 四、文件内容查看
    • 1、cat - 查看文件所有内容
    • 2、more/less - 分页查看文件内容
    • 3、head - 显示文件头部内容
    • 4、tail - 显示文件尾部内容
  • 五、搜索查找
    • 1、grep - 内容查找
    • 2、find - 文件目录查找
    • 3、locate - 全局搜索
  • 六、压缩和解压
    • 1、使用zip和unzip
    • 2、使用tar(打包与压缩)
  • 七、上传下载
    • 1、rz - 上传文件
    • 2、sz - 下载文件
    • 3、wget - 网络下载工具
  • 八、进程管理
    • 1、ps - 显示当前进程
    • 2、jps - 查看Java运行程序
    • 3、kill - 终止进程
    • 4、netstat - 查看网络连接状态及端口
    • 5、lsof - 列出被进程打开的文件
    • 6、nohup/& - 后台运行
  • 九、系统命令
    • 1、date - 查看/设置时间
    • 2、重定向
      • 2.1、>输出重定向
      • 2.2、>>追加重定向
      • 2.3、多种重定向方式
      • 2.4、标准输出(stdout)和标准错误(stderr)
      • 2.5、1、2、&表示什么意思
    • 3、| - 管道符
    • 4、which - 搜索命令
    • 5、df - 查询磁盘空间
    • 6、free - 查询系统内存
    • 7、alias - 别名
  • 十、软件安装方式
    • 1、APT (Advanced Package Tool)
    • 2、YUM (Yellowdog Updater, Modified)
    • 3、DNF (Dandified Yum)

一、Linux概述

1、常见的操作系统

  1. Windows操作系统:由微软公司开发的操作系统,广泛应用于个人电脑、服务器、游戏机等设备中
    • win xp
    • win7/win8/win10/win11等
  2. Unix操作系统(1960年代诞生):由贝尔实验室开发的一类操作系统,主要应用于服务器、工作站、超级计算机等领域,具有稳定、安全等特点
    • Solaris:SUN公司开发
    • AIX:IBM开发
    • HP-UX:惠普公司开发
    • macOS:苹果公司开发,主要应用于苹果公司的电脑和笔记本电脑上
  3. Linux 操作系统(1991年诞生):Linux 操作系统是一种开源的、免费的、类 UNIX 操作系统,用于服务器、工作站、超级计算机等领域
    • Debian:一种流行的稳定Linux操作系统
    • Ubuntu:基于Debian构建的一种流行的Linux桌面操作系统
    • Red Hat:一种商业Linux操作系统,由Red Hat公司开发
    • CentOS:通过重新编译Red Hat而得到的Linux操作系统,免费且源代码开放
    • Fedora:由Red Hat公司赞助的基于开源的Linux桌面和服务器操作系统
  4. Chrome OS操作系统:由Google公司开发的基于Chrome浏览器的操作系统,主要应用于Chromebook笔记本电脑上
  5. Android操作系统:由Google公司开发的操作系统,主要应用于手机、平板电脑等移动设备中
  6. iOS操作系统:由苹果公司开发的操作系统,主要应用于iPhone、iPad等移动设备中
  7. HarmonyOS鸿蒙操作系统,由华为公司自主开发

2、Linux发展史

  • 1991年:Linux诞生
    • Linus Torvalds(林纳斯·托瓦兹)在芬兰赫尔辛基大学开始开发Linux内核,发布了第一个版本(0.01),最初只是为了个人使用,替代Minix操作系统
  • 1992年:结合GNU工具
    • Linux内核与GNU项目的工具(如GNU C库、bash、编译器等)结合,形成了一个完整的开源操作系统,这个系统后来被称为GNU/Linux
  • 1993年:Debian发布
    • Debian作为一个完全由社区管理的发行版发布,强调自由软件,成为许多Linux发行版的基础
  • 1994年:Linux 1.0发布
    • Linux 1.0发布,标志着内核的第一次稳定版,Linux开始逐步走向成熟
  • 1996年:Red Hat Linux发布
    • Red Hat推出商业化的Linux版本,专注于企业市场,提供了稳定性和技术支持,同时采用RPM软件包管理系统
  • 2000年:Linux进入企业市场
    • 随着IBM等大型企业的支持,Linux开始在企业级环境中得到应用,特别是在Web服务器、数据库和高性能计算等领域
  • 2004年:Ubuntu发布
    • Ubuntu由Mark Shuttleworth创建,目标是让Linux更加易用和友好,特别面向普通用户,迅速成为流行的桌面操作系统
  • 2007年:Android发布
    • Android系统基于Linux内核发布,成为全球最广泛使用的移动操作系统,推动Linux在移动设备市场的普及
  • 2010年代:云计算与容器化
    • Linux在云计算(如AWS)和容器化(如Docker、Kubernetes)领域中成为主流操作系统,广泛应用于数据中心和开发环境
  • 2020年代:Linux在各领域应用
    • Linux继续主导服务器市场,尤其是在超级计算机、物联网(IoT)和人工智能领域的应用,成为全球最重要的操作系统之一

3、Linux目录结构

linux系统中一切皆文件

以下是每个目录的一些详细解释:

  1. /root: 该目录为系统管理员root,也称为超级权限者的用户主目录

  2. /home: 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账户命名

  3. /etc: 所有的系统管理员所需要的配置文件和子目录

  4. /usr:非常重要的目录,用户的很多应用程序和文件都在这个目录,类似windows下的program files目录

  5. /bin: 存放系统启动和运行所需的基本可执行文件(快捷方式,真正存储在/usr/bin),例如常用的命令 lscatcp

  6. /sbin: 存放系统管理工具和命令(快捷方式,真正存储在/usr/sbin),例如 ifconfig

  7. /opt: 存放第三方软件的安装目录,比如安装一个MySQL数据库就放到这个目录下,默认是空的

  8. /var: 存储经常变化的文件,如日志(/var/log)、缓存(/var/cache

  9. /tmp: 存放临时文件,系统重启后通常会清空

  10. /data: 通常用于存储用户数据文件(自定义目录)

  11. /www: 通常存放网站的文件(自定义目录,不是所有系统都有)

  12. /lib/lib64: 包含系统程序和内核模块的共享库(快捷方式,真正存储在/usr/lib和/usr/lib64)

  13. /media/mnt: 用于临时挂载外部设备(如 USB、光盘)

  14. /dev: 类似于windows的设备管理器,把所有的硬件用文件的形式存储

  15. /boot: 包含引导加载器相关文件(如 GRUB),以及 Linux 内核(vmlinuz

  16. /proc: 一个虚拟目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统的信息

  17. /run: 存放系统启动时创建的临时文件,如进程的PID文件

  18. /srv: 存储服务相关的数据(如 HTTP 服务的网页文件)

  19. /sys: 虚拟文件系统,提供设备和驱动程序的信息

4、终端操作快捷键

快捷键功能描述
Ctrl + C终止当前运行的命令
Ctrl + Z暂停当前命令,将其放入后台
Ctrl + L清屏(相当于执行 clear 命令)
Ctrl + A将光标移动到当前行的行首
Ctrl + E将光标移动到当前行的行尾
查看上一条历史命令
查看下一条历史命令
Tab命令或文件名自动补全

二、文件和目录操作

1、pwd - 显示当前目录

  pwd用于用于显示当前工作目录的完整路径

常用示例

2、cd - 切换目录

  cd用于切换工作目录的命令。

基本语法

cd [目录路径]
  • 目录路径可以是绝对路径相对路径
    • 绝对路径:从根目录/开始的完整路径
    • 相对路径:基于当前目录的路径

常用示例

  1. 切换到某个目录
    cd /home/user/documents
    
  2. 切换到上级目录
    cd ..
    
  3. 切换到用户主目录
    cd ~
    # 或者
    cd
    
  4. 切换到上次所在的目录
    cd -
    
  5. 切换到根目录
    cd /
    

3、ls - 列出目录内容

  ls是用于列出目录内容的命令。它可以显示当前目录(或指定目录)下的文件和子目录,并提供多种选项查看详细信息。

基本语法

ls [选项] [目录]

常用示例

  1. 列出当前目录的文件和子目录的名称
  2. 列出所有文件,包括隐藏文件(以 . 开头的文件)。其中.表示当前目录,..表示上级目录
  3. 显示详细信息(ls -l 可以简写为:ll

  4. 显示易读的文件大小(例如,KB、MB等)

4、mkdir - 创建目录

  mkdir用于创建目录

基本语法

mkdir [选项] 目录名

常用示例

  1. 创建单个目录
    mkdir mydir
    
  2. 创建多个目录
    mkdir dir1 dir2 dir3
    
  3. 递归创建多级目录
    mkdir -p /home/user/projects/2024/report
    

5、touch - 创建空文件

  touch用于创建空文件

基本语法

touch [选项] 文件名

常用示例

  1. 创建一个名为example.txt的空文件
    touch example.txt
    
  2. 同时创建多个空文件
    touch file1.txt file2.txt file3.txt
    

6、cp - 复制文件或目录

  cp用于复制文件或目录的命令。它可以将文件从一个位置复制到另一个位置,也可以递归复制整个目录。

基本语法

cp [选项] 源文件 目标文件
cp [选项] 源文件... 目标目录

常用示例

  1. 复制单个文件(如果file2.txt不存在,创建它;如果已存在,覆盖它)
    cp file1.txt file2.txt
    
  2. 复制文件到目录(复制单个文件目录会自动创建,复制多个文件目录必须存在
    # 复制单个文件
    cp file1.txt /home/user/documents/
    
    # 复制多个文件
    cp file2.txt file3.txt directory/
    
  3. 递归复制目录(将整个docs目录及其内容复制到/home/user/backup/
    cp -r /home/user/docs /home/user/backup/
    
    /home/user/backup/
    └── docs/
        ├── file1.txt
        ├── file2.txt
        ├── subdir/
        │   ├── subfile1.txt
        │   └── subfile2.txt
    

7、mv - 移动或重命名文件

  mv用于移动文件或目录,或者重命名文件或目录

基本语法

mv [选项] 源文件 目标位置

常用示例

  1. 重命名文件将oldfile.txt重命名为newfile.txt
    mv oldfile.txt newfile.txt
    
  2. 移动文件到目录(默认会直接覆盖
    # 移动单个文件
    mv file1.txt /home/user/documents/
    # 移动多个文件
    mv file1.txt file2.txt /home/user/documents/
    
  3. 移动并重命名文件(将file1.txt移动到/home/user/并重命名为renamed_file.txt)
    mv file1.txt /home/user/renamed_file.txt
    
  4. 移动整个目录(将整个docs目录移动到/home/user/backup/
    mv /home/user/docs /home/user/backup/
    

8、rm - 删除文件或目录

  rm用于删除文件或目录的命令。它是一个非常强大的工具,操作不当可能会导致数据永久丢失,因为被删除的文件通常无法恢复。

基本语法

rm [选项] 文件或目录

常用示例

  1. 删除单个文件
    rm file1.txt
    
  2. 删除多个文件
    rm file1.txt file2.txt file3.txt
    
  3. 删除目录及其所有子目录和文件
    rm -r my_directory
    
  4. 强制删除目录及其内容(跳过不存在文件的错误提示,同时取消删除确认)
    rm -rf my_directory
    

9、tree - 树形结构显示目录内容

  tree用于以树形结构显示目录及其内容。它非常直观,可以清晰地显示目录层级结构,包括文件和子目录。

常用示例

10、软链接与硬链接

软链接

  软链接是一个指向另一个文件或目录的指针文件。它类似于Windows中的快捷方式

特点

  • 软链接可以指向文件目录
  • 如果目标文件被删除,软链接会变成一个无效链接

创建软链接基本语法

ln -s [目标文件或目录] [软链接名称]

常用示例

  1. 创建文件的软链接link_to_file.txt 是指向 file.txt 的软链接)
    ln -s /home/user/file.txt /home/user/link_to_file.txt
    
  2. 创建目录的软链接
    ln -s /home/user/docs /home/user/link_to_docs
    

硬链接

  硬链接是一个指向目标文件实际数据块的链接。它本质上是另一个文件名,但与原文件共享同一数据

特点

  • 硬链接和原文件在操作上完全相同,删除任意一个,另一个仍然可用
  • 硬链接只能指向文件,不能指向目录
  • 硬链接和原文件共用同一组数据块,文件的修改会反映到所有硬链接上

创建硬链接基本语法

ln [目标文件] [硬链接名称]

常用示例

  1. 创建硬链接hardlink_to_file.txtfile.txt 的硬链接)
    ln /home/user/file.txt /home/user/hardlink_to_file.txt
    

三、文件内容编辑

1、vi、vim、view概述

  在Linux系统中,vivimview 是常用的文本编辑工具,尽管它们具有类似的功能,但也存在一些差异和各自的适用场景。

功能对比表

特性vivimview
定位基础文本编辑器增强版文本编辑器vim的只读模式
模式支持三种模式三种模式 + 多窗口、多缓冲区三种模式(默认只读)
语法高亮不支持支持支持
插件支持不支持支持支持
自动补全不支持支持支持
运行速度较快略慢(功能多,启动时消耗资源)同 vim
修改权限可读写可读写默认只读

适用场景

  • vi:需要一个基础编辑器、处理小文件、或在系统无 vim 的情况下使用
  • vim:用于编写代码、处理复杂文档、需要插件扩展的高级编辑
  • view:用于查看文件内容且不想修改文件

2、命令模式

  • 命令模式是vi/vim/view的默认模式,启动编辑器后即进入此模式
  • 在此模式下,你无法直接输入文本,只能执行控制和操作命令,例如光标移动、删除、复制等

常用命令

命令作用
x删除光标所在位置的字符
dd删除光标所在行
yy复制当前行
p在光标后粘贴内容
u撤销上一步操作
^跳到当前行的行首
$跳到当前行的行尾
gg跳到文件开头
G跳到文件末尾
/关键字n查找下一个,N向上查找
:wq保存并退出
:q!不保存退出

3、编辑模式

  • 在编辑模式下,可以直接输入文本,类似于普通文本编辑器的功能
  • 进入编辑模式后,屏幕底部会显示 -- INSERT --,表明你可以输入内容

进入编辑模式的方法

命令作用
i在光标当前位置前插入文本
I在当前行的行首插入文本
a在光标当前位置后插入文本
A在当前行的行尾插入文本
o在当前行的下方插入一个新行
O在当前行的上方插入一个新行

退出编辑模式的方法

  • 按下Esc键退出编辑模式,返回到命令模式

四、文件内容查看

1、cat - 查看文件所有内容

  cat用于查看内容较少的文件。

基本语法

cat [选项] 文件名

常用示例

  1. 查看文件内容(在终端中显示文件的完整内容
    cat file.txt
    
  2. 查看内容并添加行号

2、more/less - 分页查看文件内容

  • more:简单的分页查看工具,主要支持向下翻页,功能有限
  • less:功能强大的分页查看工具,支持上下翻页搜索跳转,更适合查看大文件

基本语法

less [选项] 文件名

常用操作键

按键功能
pagedown/空格键向下翻一页
pageup/b返回上一页
上/下箭头向上或向下滚动一行
/text搜索text,按n查看下一个,N上一个
?text搜索text(向上),按n查看下一个,N上一个
g跳转到文件开头
G跳转到文件末尾
q退出less

常用示例

  1. 查看文件内容(内容以分页形式显示)
    less file.txt
    
  2. 使用-N显示行号,-m显示百分比

3、head - 显示文件头部内容

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

基本语法

head [选项] 文件名

常用示例

  1. 默认显示前10行
    head file.txt
    
  2. 显示前20行
    head -n 20 file.txt
    # 或者
    head -20 file.txt
    
  3. 显示前50个字节
    head -c 50 file.txt
    

4、tail - 显示文件尾部内容

  tail用于显示文件的尾部部分内容。默认情况下,它会输出文件的最后10行

基本语法

tail [选项] 文件名

常用示例

  1. 默认显示最后10行
    tail file.txt
    
  2. 显示最后20行
    tail -n 20 file.txt
    # 或者
    tail -20 file.txt
    
  3. 显示最后50个字节
    tail -c 50 file.txt
    
  4. 实时跟踪文件变化(可以与-n选项结合,显示最近的指定行数并实时更新)

五、搜索查找

1、grep - 内容查找

  grep用于在文件或文本中查找指定内容。它会根据匹配的模式搜索文件,并输出匹配的行。

基本语法

grep [选项] "搜索内容" [文件名]

常用示例

  1. 在文件中查找指定内容
    grep "hello" file.txt
    
  2. 显示匹配行的行号
  3. 统计匹配的行数
  4. 递归搜索目录中的文件

2、find - 文件目录查找

  find用于在文件系统中查找文件或目录。它可以根据各种条件(如名称、大小、时间等)进行灵活的搜索,甚至可以对找到的文件执行操作。

基本语法

find [路径] [搜索条件] [操作]

常用选项

选项/条件功能
-name按名称查找文件或目录,支持通配符
-type按文件类型查找,如文件(f)或目录(d
-size按文件大小查找
-exec对找到的文件执行指定命令
-delete删除找到的文件或目录

常用示例

  1. 按名称查找文件
    find /path/to/search -name "filename"
    
  2. 支持通配符
    find /path/to/search -name "*.txt"
    
  3. 按大小查找(+:大于、-:小于;k:KB、M:MB、G:GB)
    find /path/to/search -size +10M
    
  4. 删除找到的文件
    find /path/to/search -name "*.log" -delete
    
  5. 移动文件到某个目录({}表示找到的每个文件
    find /path/to/search -name "*.txt" -exec mv {} /destination/path/ ;
    
  6. 对找到的每个.txt 文件执行cat命令
    find /path/to/search -name "*.txt" -exec cat {} ;
    

3、locate - 全局搜索

  locate用于快速全局搜索文件或目录。与find命令相比,locate的搜索速度更快,因为它使用的是事先构建好的数据库,而不是实时遍历文件系统。

基本语法

locate [选项] 搜索内容

数据库更新

  • 数据库由系统定期自动更新(通常通过 cron 定时任务)
  • 如果需要手动更新,可以运行:
    sudo updatedb
    

常用示例

  1. 查找文件或目录
    locate file.txt
    
  2. 模糊匹配
    locate "*.txt"
    
  3. 只显示前10条结果
    locate -n 10 file.txt
    

六、压缩和解压

1、使用zip和unzip

压缩文件

  • 创建一个压缩文件
    zip archive.zip file1.txt file2.txt
    
  • 压缩文件夹(包括子文件夹)
    zip -r archive.zip my_folder/
    

解压文件

  • 解压zip文件到当前目录
    unzip archive.zip
    
  • 解压到指定目录
    unzip archive.zip -d /path/to/destination
    
  • 查看压缩包内容

2、使用tar(打包与压缩)

  在Linux系统中,tar是一个常用的工具,主要用于打包文件和目录。它还可以结合压缩工具(如 gzipbzip2xz)来生成压缩文件。

基本语法

tar [选项] -f 文件名.tar [要操作的文件或目录]

常用选项

选项描述
-c创建压缩文件
-x解压归档文件
-f指定归档文件的名称
-z使用gzip压缩或解压(快速压缩和解压
-j使用bzip2压缩或解压(更高的压缩率,解压慢
-J使用xz压缩或解压(极限压缩,解压最慢
-v显示详细操作过程
-C指定解压的目标目录
-t列出归档文件的内容

压缩文件

  1. 仅打包不压缩(将目录或文件打包成.tar文件)

    tar -cf archive.tar file1.txt file2.txt my_folder
    

  2. 打包并使用gzip压缩(创建.tar.gz文件)

    tar -czf archive.tar.gz file1.txt my_folder
    

  3. 打包并使用bzip2压缩(创建.tar.bz2文件)

    tar -cjf archive.tar.bz2 file1.txt my_folder
    
  4. 打包并使用xz压缩(创建.tar.xz文件)

    tar -cJf archive.tar.xz file1.txt my_folder
    

解压文件

  1. 解压.tar文件

    tar -xf archive.tar
    
  2. 解压.tar.gz文件

    tar -xzf archive.tar.gz
    

  3. 解压.tar.bz2文件

    tar -xjf archive.tar.bz2
    
  4. 解压.tar.xz文件

    tar -xJf archive.tar.xz
    
  5. 解压到指定目录

    tar -xzf archive.tar.gz -C /path/to/destination
    
  6. 查看压缩文件.tar.gz的内容

    tar -tzf archive.tar.gz
    

七、上传下载

1、rz - 上传文件

  rz 用于将文件从本地上传到远程服务器

用法:

  1. 在服务器中运行(这会打开文件上传的交互界面)
    rz
    
  2. 在弹出的窗口中选择要上传的文件(你的终端工具需要支持Zmodem,例如Xshell、SecureCRT、MobaXterm)
  3. 文件会自动上传到服务器当前路径下

2、sz - 下载文件

  sz用于将文件从远程服务器下载到本地

用法:

  1. 在服务器中运行(文件会自动下载到本地的默认目录)
    sz filename
    
  2. 下载多个文件
    sz file1 file2
    

3、wget - 网络下载工具

  wget是一个Linux下的非交互式网络下载工具,支持从HTTPHTTPSFTP协议下载文件或网页资源。它常用于命令行环境,尤其适合在脚本中自动下载文件。

命令格式

wget [选项] [URL]

常用示例

  1. 下载单个文件
    wget http://example.com/file.txt
    
    • 此命令会从指定URL下载 file.txt文件到当前目录
  2. 通过代理下载
    wget -e use_proxy=yes -e http_proxy=http://proxy_address:port http://example.com/file.txt
    
    • 指定代理服务器地址和端口下载文件

八、进程管理

1、ps - 显示当前进程

ps:仅显示当前终端的进程


- PID: 进程 ID
- TTY: 终端名称
- TIME: 进程使用的 CPU 时间
- CMD: 执行的命令

ps aux:详细显示所有进程

  • 含义
    • a:显示所有终端的进程,包括其他用户的
    • u:以用户友好的格式显示(显示 USER、%CPU、%MEM 等信息)
    • x:显示没有终端控制的进程(如后台进程)
  • 输出字段
    • USER:运行进程的用户
    • PID:进程 ID
    • %CPU:CPU 使用率
    • %MEM:内存使用率
    • VSZ:虚拟内存大小(KB)
    • RSS:实际使用的内存大小(KB)
    • TTY:终端名称(无终端时为 ?
    • STAT:进程状态
    • START:进程启动时间
    • TIME:累计 CPU 时间
    • COMMAND:执行的命令及其参数

ps -ef:详细显示所有进程

  • 含义
    • -e:显示所有进程
    • -f:全格式显示
  • 输出字段
    • UID:运行进程的用户 ID
    • PID:进程 ID
    • PPID:父进程 ID
    • C:CPU 使用率
    • STIME:进程启动时间
    • TTY:终端名称
    • TIME:累计 CPU 时间
    • CMD:执行的命令及其参数
特性ps auxps -ef
格式用户友好的格式,显示 CPU、内存占用等信息全格式显示,包含父进程 ID(PPID)
输出字段包括 %CPU%MEMVSZRSS包括 PPIDUID,无内存或 CPU 占用信息
参数风格BSD 风格(无 -UNIX 风格(带 -
适用场景查看资源占用、运行状态更直观查看进程间关系(父子进程关系)

2、jps - 查看Java运行程序

  jps是Java提供的一个命令行工具,用于显示当前运行的Java进程。它是JDK中的一部分,主要用于调试和监控Java应用程序。

常用示例

  1. 列出本地 Java 进程
  2. 显示主类的完整包名或 JAR 文件的路径

3、kill - 终止进程

  1. 正常终止进程
    kill 12345
    
  2. 强制终止进程
    kill -9 12345
    
  3. 终止多个进程
    kill 12345 67890
    

4、netstat - 查看网络连接状态及端口

  netstat是一个网络工具,用于显示网络连接状态监听端口、路由表、网络接口统计信息等。尽管在一些现代Linux发行版中已被标记为过时工具,但它仍然是一种经典而强大的工具。

基本语法

netstat [选项]

常用选项

选项描述
-a显示所有网络连接和端口,包括监听状态
-n以数字格式显示地址和端口
-t显示 TCP 连接
-u显示 UDP 连接
-l仅显示监听状态的端口
-p显示进程 ID 和进程名称(需要 root 权限)
-i显示网络接口状态

常用组合命令

  1. 查看当前所有监听端口及对应的进程

    netstat -tuln
    

    • Proto:协议(tcp、tcp6 表示IPv4和IPv6的TCP协议,udp、udp6表示UDP协议)
    • Recv-Q 和 Send-Q:接收和发送队列的长度(通常为0)
    • Local Address:本地地址和端口,0.0.0.0 表示监听所有IPv4接口
    • Foreign Address:远程地址,0.0.0.0:* 表示任何外部地址都可以连接
    • State:连接的状态
      • LISTENING:表示该端口已占用,正在监听,等待客户端的连接
      • CONNECTED:表示网络连接已建立,但并没有开始数据传输
      • ESTABLISHED:表示网络已连接,数据正在传输中
      • TIME_WAIT:连接正在等待关闭确认
    • PID/Program name:监听端口的进程ID和对应的程序名称
  2. 查看指定端口的网络连接状态

    netstat -an | grep :22
    

5、lsof - 列出被进程打开的文件

  lsof命令用于排查文件锁定、端口占用网络连接及进程资源占用等问题。

基本语法

lsof [选项] [文件名/进程]

常用示例

  1. 列出所有被打开的文件
    • COMMAND:打开文件的进程名称
    • PID:进程的ID
    • USER:打开文件的用户
    • NAME:文件路径名称
  2. 查看某个特定文件被哪些进程打开
    lsof /path/to/file
    
  3. 查看所有网络连接(TCP、UDP)
    lsof -i
    
  4. 查看某个端口被哪个进程占用
  5. 查看指定网络接口的监听端口
    • -n:不解析主机名,直接显示IP
    • -P:不解析端口名称,直接显示端口号

6、nohup/& - 后台运行

命令介绍

  • command &:后台运行命令,但依赖当前终端。终端关闭时,进程被终止
  • nohup command:前台运行,当前终端会被占用,终端关闭后仍继续运行
  • nohup command &:最佳组合,后台运行且不受终端关闭影响

推荐写法

nohup command > output.log 2>&1 &
  • nohup:忽略挂起信号(SIGHUP),让命令在后台持续运行
  • &:将命令放到后台执行
  • > output.log 2>&1:重定向标准输出和错误输出到指定文件

springboot有logback指定日志的推荐写法(丢弃命令的标准输出和错误输出

nohup jar -jar xxx.jar > /dev/null 2>&1 &

九、系统命令

1、date - 查看/设置时间

  • 查看当前日期和时间
  • 设置系统时间(需要root权限)
    sudo date -s "2024-12-17 14:30:00"
    
  • 查看日历

2、重定向

2.1、>输出重定向

  • 命令的输出写入到一个文件。如果文件已存在,内容会被覆盖
  • 语法:
    command > filename
    
  • 示例:
    echo "Hello, World!" > example.txt
    
    • 如果example.txt已存在,其内容将被覆盖为"Hello, World!"
    • 如果文件不存在,则会新建一个文件

2.2、>>追加重定向

  • 将命令的输出追加到文件末尾。如果文件不存在,会新建一个文件
  • 语法:
    command >> filename
    
  • 示例:
    echo "Hello again!" >> example.txt
    
    • 如果 example.txt 已存在,"Hello again!" 会被追加到文件末尾
    • 如果文件不存在,会新建文件并写入 "Hello again!"

2.3、多种重定向方式

以下是 Linux 重定向的各种示例和说明:

命令示例说明
echo "Hello World" > file.txt将输出写入file.txt,如果文件存在,将覆盖内容
echo "Hello Again" >> file.txt将输出追加到file.txt的末尾,如果文件不存在,则创建它
ls nonexistentfile 2> error.log将错误信息写入error.log,覆盖已有内容
ls nonexistentfile 2>> error.log将错误信息追加到error.log的末尾
command > output.log 2> error.log分别将标准输出和错误输出重定向到不同的文件
command > /dev/null丢弃命令的标准输出
command > /dev/null 2>&1丢弃命令的标准输出和错误输出
command > output.log 2>&1将标准输出和错误输出都会写入到output.log
command &> output.log将标准输出和错误一起写入output.log,覆盖文件内容
command &>> output.log将标准输出和错误追加到output.log的末尾

ps:command &> output.log等价于command > output.log 2>&1,前者仅在 Bash4.0及以上版本支持,后者支持所有Shell,兼容性更强

2.4、标准输出(stdout)和标准错误(stderr)

  • 在 Linux 中,程序执行的输出分为两类
    • 标准输出 (stdout):程序正常运行时的输出,例如echo "Hello"的输出内容
    • 标准错误 (stderr):程序发生错误时的输出,例如尝试访问不存在的文件时的错误提示
  • 默认情况下,>>>只会捕获标准输出,不会处理标准错误。这意味着如果你重定向了输出,错误信息仍然会显示在终端中

示例:nonexistentfile文件夹不存在,existingfile文件存在

  1. 由于文件nonexistentfile不存在,错误信息会显示在终端,而不会被写入文件output.txt
  2. 使用2>将错误信息重定向到文件
  3. 使用>2>重定向标准输出和标准错误到不同文件
  4. 使用>2>&1重定向标准输出和标准错误到同一个文件

2.5、1、2、&表示什么意思

  在重定向中,&的作用是将文件描述符(File Descriptor)与目标关联起来。下面解释其具体作用及原因。

什么是文件描述符 (File Descriptor)?

  • 在Linux中,每个打开的文件、输入或输出流都有一个数字标识,称为文件描述符:
    • 标准输入 (stdin):文件描述符为 0
    • 标准输出 (stdout):文件描述符为1
    • 标准错误 (stderr):文件描述符为 2

  在命令重定向中,1> 表示标准输出重定向,因为标准输出是默认的,所以通常可以省略,直接写为command > output.txt。但是对于错误输出重定向(文件描述符为 2),必须明确写为command 2> error.txt,因为它没有默认的简化形式。

为什么需要&?

  • 例如command > output.txt 2>&1,同时重定向标准输出和错误到同一个文件
    • command > output.txt:将标准输出(文件描述符 1)写入 output.txt
    • 2>&1:表示将文件描述符2重定向到文件描述符1所指向的地方(此处是output.txt)
  • 如果没有&,例如写成2>1,会将标准错误输出到名为1的文件中,而不是文件描述符1
    • &的含义是“引用文件描述符的编号”

3、| - 管道符

  在 Linux 中,管道符(|)是一个非常重要的工具,用于将一个命令的输出作为另一个命令的输入。这使得多个命令可以组合起来完成复杂的操作。

基本用法

command1 | command2
  • command1:前一个命令,产生输出
  • command2:后一个命令,接收输入并处理

常用示例

  1. 显示当前目录下的文件,并过滤出包含 “test” 的文件

    ls -l | grep "test"
    
  2. 查看并筛选包含"nginx" 的进程

    ps aux | grep "nginx"
    

4、which - 搜索命令

  which命令用于显示某个命令的可执行文件路径。它会在环境变量PATH中搜索目标命令,并返回第一个匹配的路径。

命令格式

which [命令名称]

常用示例

  1. 查看命令路径(表示ls命令的可执行文件位于/bin/ls)
  2. 检查命令是否安装(如果返回路径,说明命令已安装;如果没有输出,则说明命令可能未安装)
    which python
    

5、df - 查询磁盘空间

  df(Disk Free)命令用于查看文件系统的磁盘空间使用情况,显示每个文件系统的总空间、已用空间、可用空间以及挂载点等信息。

命令格式

df [选项] [文件或目录]

常用选项

选项说明
-h以人类可读的格式显示磁盘使用情况(自动换算为 KB、MB、GB)
-k以 KB(千字节)为单位显示(默认单位
-m以 MB(兆字节)为单位显示
--total显示所有文件系统的总计

命令输出解释

  • Filesystem:文件系统名称,例如设备名称(如 /dev/sda1)或挂载点
  • Size:文件系统的总大小
  • Used:已使用的磁盘空间
  • Avail:可用的磁盘空间
  • Use%:磁盘使用率(以百分比表示)
  • Mounted on:文件系统挂载点

常用示例

  1. 显示特定目录的磁盘使用情况
  2. 查看所有文件系统的总计

6、free - 查询系统内存

  free 命令用于查看 Linux 系统的内存使用情况,包括物理内存(RAM)、交换空间(Swap)以及缓存(Cache)和缓存(Cache)的使用情况。

概念位置用途速度
物理内存(RAM)系统内存用于存储当前运行的程序和数据快速(与 CPU 直接交互)
交换空间(Swap)硬盘当物理内存不足时临时存储不活跃数据慢(硬盘 I/O 限制)
缓存(Cache)RAM(部分)存储从磁盘读取过的数据,加速读取操作快(但低于 RAM 的直接访问)
缓存(Cache)RAM(部分)存储即将写入磁盘的数据,加速写入操作快(但低于 RAM 的直接访问)

命令格式

free [选项]

常用选项

选项说明
-b以字节(bytes)为单位显示内存使用情况
-k以千字节(KB)为单位显示(默认单位
-m以兆字节(MB)为单位显示
-g以千兆字节(GB)为单位显示
-h以人类可读格式显示(自动转换单位

命令输出解释

  • Mem 部分:
    • used:被程序和操作系统占用的内存,包括缓存和缓冲
    • free:完全未使用的内存
    • buff/cache:用作缓存和缓冲的数据,这部分可在需要时释放
    • available:可用内存,包含未使用内存和缓存中可以释放的内存
    • shared:多进程共享的内存
  • Swap 部分:
    • total:交换空间总大小
    • used:已使用的交换空间大小
    • free:未使用的交换空间大小

7、alias - 别名

  别名(alias)是为命令定义快捷方式的一种方法。通过别名,您可以为常用的命令指定更短、更易记的名称,也可以为命令添加默认选项,从而提高工作效率。

基本语法

alias 别名='命令'
  • 别名是您要创建的快捷方式名称
  • 命令是您希望别名执行的实际命令
  • 注意:等号=两边不能有空格,且命令部分通常需要用单引号括起来,避免意外扩展

常用示例

  1. 设置常用别名

    # 常用命令简化
    alias ll='ls -la'
    alias la='ls -A'
    alias l='ls -CF'
    
    # 安全性提示
    alias rm='rm -i'
    alias cp='cp -i'
    alias mv='mv -i'
    
    # 颜色支持
    alias ls='ls --color=auto'
    alias grep='grep --color=auto'
    
    # 显示磁盘和内存信息
    alias df='df -h'
    alias free='free -m'
    
    # 网络相关
    alias myip='curl ifconfig.me'
    alias ports='netstat -tulanp'
    
    # 自定义日期格式
    alias now='date +"%Y-%m-%d %H:%M:%S"'
    alias today='date +"%Y-%m-%d"'
    
    # 快速清屏
    alias cls='clear'
    
    # 冗长的命令定义别名
    alias untar='tar -zxvf'
    alias mkcd='mkdir -p'
    
  2. 查看别名

  3. 取消别名

    # 取消 ll 别名
    unalias ll
    

永久保存别名

  别名默认只在当前会话中有效。如果想让别名永久生效,可以将别名添加到用户的Shell配置文件中

  1. 编辑 Shell 配置文件
    • 如果使用 Bash,编辑 ~/.bashrc 文件:
      vim ~/.bashrc
      
    • 如果使用 Zsh,编辑 ~/.zshrc 文件:
      vim ~/.zshrc
      
  2. 添加别名
    alias ll='ls -la'
    alias grep='grep --color=auto'
    
  3. 保存并退出
  4. 使修改立即生效
    source ~/.bashrc
    

十、软件安装方式

  在Linux系统中,aptyumdnf是三种常见的软件包管理工具,分别用于不同的Linux发行版。

1、APT (Advanced Package Tool)

  APT是Debian及其衍生发行版(如Ubuntu、Linux Mint)中的软件包管理工具,专门用于管理.deb格式的软件包。

常用命令

  • apt update: 更新软件包列表
  • apt upgrade: 升级已安装的软件包
  • apt install <包名>: 安装软件包
  • apt remove <包名>: 删除软件包
  • apt autoremove: 自动移除无用的依赖包

特点

  • 简单易用
  • 软件包管理效率高,依赖关系处理得当
  • 面向Debian系的发行版

2、YUM (Yellowdog Updater, Modified)

  YUM是CentOSRed Hat Enterprise Linux(RHEL)和其他基于RPM的软件包管理工具,专门用于管理.rpm格式的软件包。

常用命令

  • yum update: 更新所有软件包
  • yum install <包名>: 安装软件包
  • yum remove <包名>: 删除软件包
  • yum search <包名>: 搜索软件包
  • yum list: 列出所有可用的软件包

特点

  • 支持软件包组安装(如安装一个功能所需的多组软件包)
  • 依赖解决能力较好,但相较于DNF稍显落后

3、DNF (Dandified Yum)

  DNF是YUM的下一代版本,适用于RHEL 8+CentOS 8+、Fedora等发行版,是YUM的替代工具

常用命令

  • dnf update: 更新软件包
  • dnf install <包名>: 安装软件包
  • dnf remove <包名>: 删除软件包
  • dnf search <包名>: 搜索软件包
  • dnf autoremove: 自动清理无用依赖

特点

  • 更快的性能和更少的内存占用
  • 改善了依赖关系的解决算法
  • 更现代化的插件和扩展支持

本文地址:https://www.vps345.com/4244.html

搜索文章

Tags

PV计算 带宽计算 流量带宽 服务器带宽 上行带宽 上行速率 什么是上行带宽? CC攻击 攻击怎么办 流量攻击 DDOS攻击 服务器被攻击怎么办 源IP 服务器 linux 运维 游戏 云计算 javascript 前端 chrome edge llama 算法 opencv 自然语言处理 神经网络 语言模型 ubuntu ssh deepseek Ollama 模型联网 API CherryStudio RTSP xop RTP RTSPServer 推流 视频 科技 ai java 人工智能 个人开发 python MCP 进程 操作系统 进程控制 Ubuntu 阿里云 网络 网络安全 网络协议 运维开发 分布式 云原生 Flask FastAPI Waitress Gunicorn uWSGI Uvicorn 宝塔面板访问不了 宝塔面板网站访问不了 宝塔面板怎么配置网站能访问 宝塔面板配置ip访问 宝塔面板配置域名访问教程 宝塔面板配置教程 rust http 开发语言 fastapi mcp mcp-proxy mcp-inspector fastapi-mcp agent sse 面试 性能优化 jdk intellij-idea 架构 vue.js audio vue音乐播放器 vue播放音频文件 Audio音频播放器自定义样式 播放暂停进度条音量调节快进快退 自定义audio覆盖默认样式 ssl harmonyos 华为 typescript 计算机网络 tcp/ip 数据库 centos oracle 关系型 安全 macos 向日葵 命名管道 客户端与服务端通信 机器学习 flutter Hyper-V WinRM TrustedHosts YOLO efficientVIT YOLOv8替换主干网络 TOLOv8 ESP32 camera Arduino 电子信息 mount挂载磁盘 wrong fs type LVM挂载磁盘 Centos7.9 debian PVE github 创意 社区 WSL2 ESXi c# 笔记 C 环境变量 进程地址空间 智能路由器 dell服务器 目标检测 go 代理模式 Windsurf 开源 golang 后端 cpu 内存 实时 使用 物联网 iot ollama 大模型 mac pycharm ide 僵尸进程 Dify react.js 前端面试题 node.js 持续部署 adb 统信UOS 麒麟 bonding 链路聚合 EtherCAT转Modbus ECT转Modbus协议 EtherCAT转485网关 ECT转Modbus串口网关 EtherCAT转485协议 ECT转Modbus网关 ddos chatgpt llama3 Chatglm 开源大模型 ffmpeg 音视频 c++ Dell R750XS mcu 信息与通信 udp unity AI 爬虫 数据集 华为云 android 鸿蒙 嵌入式硬件 单片机 温湿度数据上传到服务器 Arduino HTTP ai小智 语音助手 ai小智配网 ai小智教程 智能硬件 esp32语音助手 diy语音助手 编辑器 docker websocket 学习 sql KingBase 大数据 数据挖掘 网络用户购物行为分析可视化平台 大数据毕业设计 1024程序员节 oceanbase rc.local 开机自启 systemd uni-app spring boot tomcat 银河麒麟 kylin v10 麒麟 v10 php LDAP postman mock mock server 模拟服务器 mock服务器 Postman内置变量 Postman随机数据 flask AI编程 AIGC GaN HEMT 氮化镓 单粒子烧毁 辐射损伤 辐照效应 pytorch MacOS录屏软件 nginx dubbo protobuf 序列化和反序列化 安装 深度学习 sqlserver Agent rust腐蚀 .net 前端框架 计算机视觉 aws googlecloud vSphere vCenter 软件定义数据中心 sddc cuda cudnn anaconda mysql 鸿蒙系统 rpc filezilla 无法连接服务器 连接被服务器拒绝 vsftpd 331/530 VMware安装mocOS VMware macOS系统安装 jmeter 软件测试 HCIE 数通 外网访问 内网穿透 端口映射 .netcore 计算机外设 电脑 软件需求 gateway Clion Nova ResharperC++引擎 Centos7 远程开发 json html5 firefox vim live555 rtsp rtp 自动化 vue3 HTML audio 控件组件 vue3 audio音乐播放器 Audio标签自定义样式默认 vue3播放音频文件音效音乐 自定义audio播放器样式 播放暂停调整声音大小下载文件 kubernetes 容器 学习方法 经验分享 程序人生 windows 微服务 springcloud vscode 嵌入式 linux驱动开发 arm开发 numpy gpu算力 asm DeepSeek-R1 API接口 HarmonyOS Next Docker Hub docker pull 镜像源 daemon.json Linux 串口服务器 Trae IDE AI 原生集成开发环境 Trae AI C语言 驱动开发 硬件工程 嵌入式实习 devops springboot express conda ipython https 三级等保 服务器审计日志备份 llm 本地部署 api 远程 命令 执行 sshpass 操作 DigitalOcean GPU服务器购买 GPU服务器哪里有 GPU服务器 apache matlab stm32 qt matplotlib bootstrap html redis web安全 Kali Linux 黑客 渗透测试 信息收集 zabbix 监控 系统架构 ecmascript nextjs react reactjs QQ 机器人 bot Docker unix 低代码 ArcTS 登录 ArcUI GridItem 压测 ECS arkUI ssrf 失效的访问控制 Google pay Apple pay safari pip Mac 系统 android studio 交互 ollama下载加速 xrdp 远程桌面 远程连接 其他 vue 课程设计 并查集 leetcode spring DeepSeek 能力提升 面试宝典 技术 IT信息化 thingsboard postgresql 视觉检测 微信 VMware创建虚拟机 VMware安装Ubuntu Ubuntu安装k8s k8s Cline 自动化编程 pygame 小游戏 五子棋 rabbitmq 直播推流 mongodb ros2 moveit 机器人运动 蓝耘科技 元生代平台工作流 ComfyUI word图片自动上传 word一键转存 复制word图片 复制word图文 复制word公式 粘贴word图文 粘贴word公式 threejs 3D 状态管理的 UDP 服务器 Arduino RTOS yum nvidia java-ee eureka SenseVoice RoboVLM 通用机器人策略 VLA设计哲学 vlm fot robot 视觉语言动作模型 具身智能 软件工程 django Qwen2.5-coder 离线部署 kylin Invalid Host allowedHosts rdp 实验 混合开发 环境安装 JDK fpga开发 jar gradle selenium 测试工具 DNS YOLOv8 NPU Atlas800 A300I pro asi_bench C# MQTTS 双向认证 emqx okhttp mysql离线安装 ubuntu22.04 mysql8.0 UOS 统信操作系统 jenkins maven svn ci/cd KylinV10 麒麟操作系统 虚拟机 Vmware mybatis 安装教程 GPU环境配置 Ubuntu22 CUDA PyTorch Anaconda安装 云电竞 云电脑 todesk centos-root /dev/mapper yum clean all df -h / du -sh 京东云 chrome 浏览器下载 chrome 下载安装 谷歌浏览器下载 transformer ping++ 缓存 深度优先 图论 并集查找 换根法 树上倍增 iBMC UltraISO c语言 stm32项目 webrtc 远程工作 microsoft kafka 数据结构 zotero WebDAV 同步失败 agi gpt 宝塔面板 部署 prometheus elasticsearch r语言 数据可视化 bash git ocr 飞牛NAS 飞牛OS MacBook Pro 压力测试 测试用例 功能测试 hadoop Ubuntu Server Ubuntu 22.04.5 服务器配置 next.js 部署next.js 政务 分布式系统 监控运维 Prometheus Grafana Reactor 设计模式 C++ 生物信息学 媒体 银河麒麟服务器操作系统 系统激活 ansible playbook 剧本 企业微信 Linux24.04 deepin 博客 交换机 telnet 远程登录 微信小程序 AP配网 AK配网 小程序AP配网和AK配网教程 WIFI设备配网小程序UDP开 tcpdump openvpn server openvpn配置教程 centos安装openvpn gpt-3 文心一言 LLM 大模型面经 职场和发展 Deepseek 大模型学习 grafana k8s资源监控 annotations自动化 自动化监控 监控service 监控jvm 实战案例 负载均衡 硬件 设备 GPU PCI-Express 小程序 安卓 智能手机 NAS Termux Samba 华为认证 网络工程师 拓扑图 SSH Java p2p gitee SWAT 配置文件 服务管理 网络共享 gaussdb DeepSeek行业应用 Heroku 网站部署 系统安全 jupyter springboot远程调试 java项目远程debug docker远程debug java项目远程调试 springboot远程 intellij idea asp.net大文件上传 asp.net大文件上传源码 ASP.NET断点续传 asp.net上传文件夹 asp.net上传大文件 .net core断点续传 .net mvc断点续传 micropython esp32 mqtt RAID RAID技术 磁盘 存储 实时音视频 ruoyi IIS服务器 IIS性能 日志监控 mamba Vmamba 腾讯云 服务器管理 配置教程 服务器安装 网站管理 excel 数据分析 多进程 AI代码编辑器 矩阵 visual studio code 工业4.0 KVM 医疗APP开发 app开发 windwos防火墙 defender防火墙 win防火墙白名单 防火墙白名单效果 防火墙只允许指定应用上网 防火墙允许指定上网其它禁止 客户端 高效远程协作 TrustViewer体验 跨设备操作便利 智能远程控制 spring cloud hibernate AI大模型 大模型入门 大模型教程 Cookie IPMI 自动驾驶 漏洞 kind TRAE 微信开放平台 微信公众平台 微信公众号配置 无人机 wireshark 同步 备份 建站 安全威胁分析 金融 Portainer搭建 Portainer使用 Portainer使用详解 Portainer详解 Portainer portainer Xterminal ue4 着色器 ue5 虚幻 报错 kali 共享文件夹 bug 豆瓣 追剧助手 迅雷 nas 弹性计算 云服务器 裸金属服务器 弹性裸金属服务器 虚拟化 Ark-TS语言 rag ragflow ragflow 源码启动 openEuler unity3d 网络穿透 dns 程序员 恒源云 致远OA OA服务器 服务器磁盘扩容 gitlab CORS 跨域 oneapi 大模型微调 灵办AI kvm 半虚拟化 硬件虚拟化 Hypervisor 传统数据库升级 银行 大语言模型 LLMs dify arm MQTT mosquitto 消息队列 进程信号 sqlite 腾讯云大模型知识引擎 自动化运维 shell outlook kamailio sip VoIP 中间件 可信计算技术 安全架构 网络攻击模型 大数据平台 产品经理 echarts 信息可视化 网页设计 n8n 工作流 workflow firewalld wsl2 wsl pillow 硬件架构 AISphereButler Java Applet URL操作 服务器建立 Socket编程 网络文件读取 JAVA linux 命令 sed 命令 国产操作系统 ukui 麒麟kylinos openeuler 框架搭建 WSL win11 无法解析服务器的名称或地址 virtualenv 微信小程序域名配置 微信小程序服务器域名 微信小程序合法域名 小程序配置业务域名 微信小程序需要域名吗 微信小程序添加域名 微信分享 Image wxopensdk EasyConnect YOLOv12 RustDesk自建服务器 rustdesk服务器 docker rustdesk web3.py 服务器主板 AI芯片 孤岛惊魂4 openwrt 华为od OD机试真题 华为OD机试真题 服务器能耗统计 yum源切换 更换国内yum源 RTMP 应用层 string模拟实现 深拷贝 浅拷贝 经典的string类问题 三个swap 游戏服务器 TrinityCore 魔兽世界 开发环境 SSL证书 代码调试 ipdb adobe Python 网络编程 聊天服务器 套接字 TCP Socket IPMITOOL BMC 硬件管理 opcua opcda KEPServer安装 springsecurity6 oauth2 授权服务器 token sas FTP 服务器 源码剖析 rtsp实现步骤 流媒体开发 NFS redhat dba pdf 群晖 文件分享 iis 多线程服务器 Linux网络编程 NPS 雨云服务器 雨云 密码学 list 服务器数据恢复 数据恢复 存储数据恢复 raid5数据恢复 磁盘阵列数据恢复 远程控制 远程看看 远程协助 visualstudio 服务器繁忙 rsyslog v10 软件 集成学习 集成测试 3d 数学建模 网络结构图 无桌面 命令行 链表 GIS 遥感 WebGIS 阿里云ECS rclone AList webdav fnOS 设置代理 实用教程 输入法 Ubuntu DeepSeek DeepSeek Ubuntu DeepSeek 本地部署 DeepSeek 知识库 DeepSeek 私有化知识库 本地部署 DeepSeek DeepSeek 私有化部署 av1 电视盒子 机顶盒ROM 魔百盒刷机 WebUI DeepSeek V3 keepalived css 运维监控 sonoma 自动更新 联想开天P90Z装win10 SSH 服务 SSH Server OpenSSH Server xshell termius iterm2 Kylin-Server 多个客户端访问 IO多路复用 回显服务器 TCP相关API neo4j 数据仓库 数据库开发 数据库架构 database npm pyautogui 黑客技术 流式接口 网工 搜索引擎 minicom 串口调试工具 cnn DenseNet 宕机切换 服务器宕机 小番茄C盘清理 便捷易用C盘清理工具 小番茄C盘清理的优势尽显何处? 教你深度体验小番茄C盘清理 C盘变红?!不知所措? C盘瘦身后电脑会发生什么变化? CrewAI log4j chrome devtools chromedriver qemu libvirt AI写作 prompt vue-i18n 国际化多语言 vue2中英文切换详细教程 如何动态加载i18n语言包 把语言json放到服务器调用 前端调用api获取语言配置文件 SRS 流媒体 直播 数据管理 数据治理 数据编织 数据虚拟化 Deepseek-R1 私有化部署 推理模型 elk Cursor ip命令 新增网卡 新增IP 启动网卡 tidb GLIBC 环境迁移 DocFlow 图像处理 常用命令 文本命令 目录命令 python3.11 信号处理 dash 正则表达式 自动化测试 性能测试 odoo 服务器动作 Server action DevEco Studio gcc centos 7 netty 黑苹果 怎么卸载MySQL MySQL怎么卸载干净 MySQL卸载重新安装教程 MySQL5.7卸载 Linux卸载MySQL8.0 如何卸载MySQL教程 MySQL卸载与安装 远程过程调用 Windows环境 sdkman IIS .net core Hosting Bundle .NET Framework vs2022 XFS xfs文件系统损坏 I_O error es jvm k8s集群资源管理 云原生开发 模拟实现 RAGFLOW 毕设 图形渲染 相差8小时 UTC 时间 FTP服务器 langchain deep learning Ubuntu 24 常用命令 Ubuntu 24 Ubuntu vi 异常处理 gitea risc-v 监控k8s 监控kubernetes wordpress 无法访问wordpess后台 打开网站页面错乱 linux宝塔面板 wordpress更换服务器 alias unalias 别名 fd 文件描述符 版本 Wi-Fi web c dity make 软考 计算机 显示过滤器 ICMP Wireshark安装 王者荣耀 源码 毕业设计 hive Hive环境搭建 hive3环境 Hive远程模式 SysBench 基准测试 ecm bpm minio 单元测试 rime 执法记录仪 智能安全帽 smarteye 基础入门 编程 音乐服务器 Navidrome 音流 MCP server C/S GCC aarch64 编译安装 HPC windows日志 私有化 idm Minecraft DOIT 四博智联 ui flash-attention docker命令大全 5G 3GPP 卫星通信 H3C Dell HPE 联想 浪潮 iDRAC R720xd 监控k8s集群 集群内prometheus freebsd MySql 服务器无法访问 ip地址无法访问 无法访问宝塔面板 宝塔面板打不开 云服务 邮件APP 免费软件 磁盘监控 ROS 聊天室 uni-file-picker 拍摄从相册选择 uni.uploadFile H5上传图片 微信小程序上传图片 虚拟局域网 selete 高级IO FunASR ASR file server http server web server muduo 个人博客 X11 Xming 计算虚拟化 弹性裸金属 GoogLeNet 游戏程序 Linux awk awk函数 awk结构 awk内置变量 awk参数 awk脚本 awk详解 Claude deepseek r1 eNSP 网络规划 VLAN 企业网络 mariadb ios 显卡驱动 Linux无人智慧超市 LInux多线程服务器 QT项目 LInux项目 单片机项目 远程服务 make命令 makefile文件 序列化反序列化 iphone 阻塞队列 生产者消费者模型 服务器崩坏原因 jetty undertow iftop 网络流量监控 磁盘镜像 服务器镜像 服务器实时复制 实时文件备份 Erlang OTP gen_server 热代码交换 事务语义 docker run 数据卷挂载 交互模式 MNN Qwen ip 备份SQL Server数据库 数据库备份 傲梅企业备份网络版 openstack Xen ruby hugo Playwright Netty 即时通信 NIO P2P HDLC 思科 HTTP 服务器控制 ESP32 DeepSeek 技能大赛 银河麒麟桌面操作系统 Kylin OS 国产化 linux上传下载 QT 5.12.12 QT开发环境 Ubuntu18.04 文件系统 路径解析 在线预览 xlsx xls文件 在浏览器直接打开解析xls表格 前端实现vue3打开excel 文件地址url或接口文档流二进 迁移指南 docker搭建nacos详解 docker部署nacos docker安装nacos 腾讯云搭建nacos centos7搭建nacos USB网络共享 游戏机 程序 性能分析 vmware 卡死 思科模拟器 Cisco nuxt3 交叉编译 uv vasp安装 AI作画 linux环境变量 模拟退火算法 docker compose 算力 CH340 串口驱动 CH341 uart 485 Radius wps 边缘计算 RAG 检索增强生成 文档解析 大模型垂直应用 webstorm 银河麒麟高级服务器 外接硬盘 Kylin 社交电子 bcompare Beyond Compare 数据库系统 linux安装配置 rocketmq Docker Compose docker-compose rnn seatunnel nac 802.1 portal 直流充电桩 充电桩 DBeaver kerberos W5500 OLED u8g2 TCP服务器 SEO 网站搭建 serv00 chfs ubuntu 16.04 强制清理 强制删除 mac废纸篓 etcd 数据安全 RBAC Docker引擎已经停止 Docker无法使用 WSL进度一直是0 镜像加速地址 vscode 1.86 火绒安全 Nuxt.js VM搭建win2012 win2012应急响应靶机搭建 攻击者获取服务器权限 上传wakaung病毒 应急响应并溯源 挖矿病毒处置 应急响应综合性靶场 xml 目标跟踪 OpenVINO 推理应用 开机自启动 EMUI 回退 降级 升级 ceph 飞书 cmos uniapp 备选 网站 调用 示例 CPU 主板 电源 网卡 宝塔 深度求索 私域 知识库 ros lio-sam SLAM glibc 重启 排查 系统重启 日志 原因 OpenManus 业界资讯 鲲鹏 edge浏览器 code-server 匿名管道 pgpool 软负载 miniapp 真机调试 调试 debug 断点 网络API请求调试方法 HiCar CarLife+ CarPlay QT RK3588 yolov8 端口测试 frp CLion 实时互动 Node-Red 编程工具 流编程 图形化界面 田俊楠 MS Materials openssl 自定义客户端 SAS crosstool-ng curl wget 大模型应用 nfs 华为机试 skynet 英语 xcode tensorflow 系统开发 binder 车载系统 framework 源码环境 trae armbian u-boot Linux PID LORA NLP 昇腾 npu remote-ssh 多层架构 解耦 LInux 统信 虚拟机安装 Jellyfin 云桌面 微软 AD域控 证书服务器 大大通 第三代半导体 碳化硅 UDP的API使用 SSH 密钥生成 SSH 公钥 私钥 生成 ftp 分析解读 rustdesk VPS pyqt 权限 自动化任务管理 URL opensearch helm MI300x 代理 WebRTC web3 tcp ux 多线程 vscode1.86 1.86版本 ssh远程连接 open Euler dde big data 线程 open webui 蓝桥杯 epoll 小艺 Pura X 智能音箱 智能家居 vr 北亚数据恢复 oracle数据恢复 单一职责原则 MacMini 迷你主机 mini Apple 宠物 免费学习 宠物领养 宠物平台 XCC Lenovo 指令 崖山数据库 YashanDB mq 繁忙 解决办法 替代网站 汇总推荐 AI推理 x64 SIGSEGV SSE xmm0 Ubuntu 24.04.1 轻量级服务器 MQTT协议 消息服务器 代码 asp.net大文件上传下载 VSCode 移动云 Linux的权限 VR手套 数据手套 动捕手套 动捕数据手套 IM即时通讯 剪切板对通 HTML FORMAT 银河麒麟操作系统 Redis Desktop 服务器部署ai模型 sqlite3 embedding SSL 域名 Anolis nginx安装 linux插件下载 高效日志打印 串口通信日志 服务器日志 系统状态监控日志 异常记录日志 ldap g++ g++13 docker部署Python 7z arcgis Windows ai工具 架构与原理 banner idea 相机 内网环境 Linux的基础指令 推荐算法 服务网格 istio IDEA onlyoffice 历史版本 下载 网卡的名称修改 eth0 ens33 etl triton 模型分析 less 大文件分片上传断点续传及进度条 如何批量上传超大文件并显示进度 axios大文件切片上传详细教 node服务器合并切片 vue3大文件上传报错提示错误 大文件秒传跨域报错cors 增强现实 沉浸式体验 应用场景 技术实现 案例分析 AR Xinference RAGFlow Unity Dedicated Server Host Client 无头主机 cd 目录切换 游戏引擎 虚幻引擎 HarmonyOS OpenHarmony virtualbox WSL2 上安装 Ubuntu ubuntu24 vivado24 c/c++ 串口 vpn 网络药理学 生信 gromacs 分子动力学模拟 MD 动力学模拟 语法 db apt 国内源 Open WebUI css3 企业网络规划 华为eNSP 视频编解码 sentinel sequoiaDB 知识图谱 区块链 捆绑 链接 谷歌浏览器 youtube google gmail 用户缓冲区 信创 信创终端 中科方德 midjourney 支付 微信支付 开放平台 ArkTs ArkUI PX4 rancher 进程优先级 调度队列 进程切换 prometheus数据采集 prometheus数据模型 prometheus特点 lsb_release /etc/issue /proc/version uname -r 查看ubuntu版本 Mac内存不够用怎么办 佛山戴尔服务器维修 佛山三水服务器维修 WLAN swoole cocoapods 我的世界服务器搭建 regedit 开机启动 加解密 Yakit yaklang 实习 干货分享 黑客工具 密码爆破 技术共享 我的世界 我的世界联机 数码 Kali 渗透 流水线 脚本式流水线 服务器时间 C++软件实战问题排查经验分享 0xfeeefeee 0xcdcdcdcd 动态库加载失败 程序启动失败 程序运行权限 标准用户权限与管理员权限 webgl 本地化部署 反向代理 考研 eclipse searxng PPI String Cytoscape CytoHubba 像素流送api 像素流送UE4 像素流送卡顿 像素流送并发支持 tailscale derp derper 中转 WebVM 线性代数 电商平台 金仓数据库 2025 征文 数据库平替用金仓 抗锯齿 Ubuntu22.04 开发人员主页 trea lua 玩机技巧 软件分享 软件图标 firewall su sudo cursor 域名服务 DHCP 符号链接 配置 Typore 音乐库 飞牛 树莓派 VNC 影刀 #影刀RPA# 移动魔百盒 iventoy VmWare OpenEuler USB转串口 harmonyOS面试题 键盘 聚类 前后端分离 Python基础 Python教程 Python技巧 嵌入式系统开发 本地知识库部署 DeepSeek R1 模型 figma 代理服务器 强化学习 rtsp服务器 rtsp server android rtsp服务 安卓rtsp服务器 移动端rtsp服务 大牛直播SDK powerpoint 环境配置 Spring Security AnythingLLM AnythingLLM安装 grub 版本升级 扩容 ISO镜像作为本地源 基础环境 游戏开发 显示管理器 lightdm gdm 主从复制 人工智能生成内容 cfssl 大模型部署 镜像 can 线程池 大模型推理 稳定性 看门狗 单例模式 虚拟现实 ssh远程登录 dns是什么 如何设置电脑dns dns应该如何设置 xss 双系统 GRUB引导 Linux技巧 llama.cpp minecraft pppoe radius AI agent 浏览器开发 AI浏览器 查询数据库服务IP地址 SQL Server ssh漏洞 ssh9.9p2 CVE-2025-23419 分布式训练 AutoDL yaml Ultralytics 可视化 国标28181 视频监控 监控接入 语音广播 流程 SIP SDP Linux环境 CentOS qt项目 qt项目实战 qt教程 代码托管服务 OpenSSH 物联网开发 根服务器 clickhouse 模拟器 教程 UOS1070e EMQX 通信协议 VS Code laravel 小智AI服务端 xiaozhi TTS junit AD 域管理 上传视频文件到服务器 uniApp本地上传视频并预览 uniapp移动端h5网页 uniapp微信小程序上传视频 uniapp app端视频上传 uniapp uview组件库 jina perf seleium 内网服务器 内网代理 内网通信 TCP协议 需求分析 规格说明书 composer 嵌入式Linux IPC 产测工具框架 IMX6ULL 管理框架 Ubuntu共享文件夹 共享目录 Linux共享文件夹 k8s二次开发 集群管理 互信 虚拟显示器 毕昇JDK Logstash 日志采集 中兴光猫 换光猫 网络桥接 自己换光猫 上传视频至服务器代码 vue3批量上传多个视频并预览 如何实现将本地视频上传到网页 element plu视频上传 ant design vue vue3本地上传视频及预览移除 autodl 开发 多端开发 智慧分发 应用生态 鸿蒙OS AD域 软件构建 语音识别 ubuntu24.04.1 网络建设与运维 EtherNet/IP串口网关 EIP转RS485 EIP转Modbus EtherNet/IP网关协议 EIP转RS485网关 EIP串口服务器 NLP模型 自学笔记 小米 澎湃OS Android Headless Linux 元服务 应用上架 安防软件 换源 Debian wpf CDN fast bat 端口 查看 ss flink 读写锁 AI Agent 字节智能运维 java-rocketmq 做raid 装系统 本地部署AI大模型 存储维护 NetApp存储 EMC存储 deekseek TrueLicense IPv4 子网掩码 公网IP 私有IP 项目部署到linux服务器 项目部署过程 CVE-2024-7347 react native ShenTong 超融合 h.264 easyui IO模型 飞牛nas fnos 信号 LLM Web APP Streamlit DIFY cpp-httplib IMM DeepSeek r1 sysctl.conf vm.nr_hugepages 策略模式 spark HistoryServer Spark YARN jobhistory nlp AI-native Docker Desktop 免费域名 域名解析 IMX317 MIPI H265 VCU 办公自动化 自动化生成 pdf教程 僵尸世界大战 游戏服务器搭建 zookeeper saltstack 李心怡 程序员创富 MDK 嵌入式开发工具 论文笔记 sublime text vnc 磁盘清理 zip unzip 软链接 硬链接 云耀服务器 软件卸载 系统清理 Web服务器 多线程下载工具 PYTHON Linux权限 权限命令 特殊权限 网络爬虫 合成模型 扩散模型 图像生成 防火墙 NAT转发 NAT Server 电视剧收视率分析与可视化平台 MAC SecureCRT UEFI Legacy MBR GPT U盘安装操作系统 鸿蒙开发 移动开发 问题解决 离线部署dify kotlin MacOS xpath定位元素 Sealos 论文阅读 烟花代码 烟花 元旦 健康医疗 智能电视 copilot UDP 网络搭建 神州数码 神州数码云平台 云平台 流量运营 ip协议 kernel 在线office 带外管理 欧标 OCPP nftables MAVROS 四旋翼无人机 mcp服务器 client close AI员工 ubuntu 18.04 Unity插件 MVS 海康威视相机 IO proxy模式 浏览器自动化 性能调优 安全代理 dock 加速 通信工程 毕业 极限编程 安装MySQL Qwen2.5-VL vllm 容器技术 粘包问题 ubuntu20.04 开机黑屏 nosql Reactor反应堆 vu大文件秒传跨域报错cors iperf3 带宽测试 沙盒 word 多路转接 docker搭建pg docker搭建pgsql pg授权 postgresql使用 postgresql搭建 对比 工具 meld DiffMerge win服务器架设 windows server 查看显卡进程 fuser navicat ArtTS 互联网医院 nvm whistle Attention 项目部署 SVN Server tortoise svn 状态模式 deployment daemonset statefulset cronjob React Next.js 开源框架 HAProxy hexo 国产数据库 瀚高数据库 数据迁移 下载安装 visual studio hosts gnu ranger MySQL8.0 端口聚合 windows11 milvus System V共享内存 进程通信 计算生物学 生物信息 基因组 docker desktop image HarmonyOS NEXT 原生鸿蒙 wsgiref Web 服务器网关接口 ABAP fstab ardunio BLE ros1 Noetic 20.04 apt 安装 top Linux top top命令详解 top命令重点 top常用参数 docker部署翻译组件 docker部署deepl docker搭建deepl java对接deepl 翻译组件使用 rpa 钉钉 风扇控制软件 CentOS Stream Linux find grep 抓包工具 yolov5 热榜 perl yum换源 Linux 维护模式 js java-rabbitmq 搭建个人相关服务器 数字证书 签署证书 CosyVoice 服务器正确解析请求体 大模型技术 本地部署大模型 lb 协议 conda配置 conda镜像源 服务器安全 网络安全策略 防御服务器攻击 安全威胁和解决方案 程序员博客保护 数据保护 安全最佳实践 MobaXterm 本地环回 bind 机柜 1U 2U macOS mm-wiki搭建 linux搭建mm-wiki mm-wiki搭建与使用 mm-wiki使用 mm-wiki详解 宝塔面板无法访问 powerbi 达梦 DM8 话题通信 服务通信 Doris搭建 docker搭建Doris Doris搭建过程 linux搭建Doris Doris搭建详细步骤 Doris部署 接口优化 WebServer 搜狗输入法 中文输入法 解决方案 西门子PLC 通讯 视频平台 录像 视频转发 视频流 隐藏文件 隐藏目录 管理器 通配符