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

Linux(ubuntu)系统的一些基本操作和命令(持续更新)

操作:

Ctrl + Alt + T(打开命令终端)

Ctrl + Shift + '+'(放大命令终端窗口)

Ctrl + c(退出当前在终端运行的程序)

在命令终端窗口按Tab键可以补全要写的命令

命令:

pwd(查看当前所在文件夹)

cd 文件路径(到指定文件路径下)

cat 文件路径 (查看该文件路径下文件的内容(在同目录的可以不用写前缀路径))

vi 文件路径(进入vi模式查看该文件路径下文件的内容(在同目录的可以不用写前缀路径))

rm / -rf(强制删除根文件)

-rf 是命令行中的选项,通常在 Linux/Unix 系统中使用 rm 命令时见到。它是两个选项的组合,分别是:

  1. -r (recursive)
    表示递归删除,用于删除目录及其所有子文件和子目录。没有这个选项,rm 只能删除单个文件,不能直接删除目录。

  2. -f (force)
    表示强制删除,不会提示用户确认,也不会报告不存在的文件或权限问

rm 表示删除某个文件

/ 表示根文件(该位置敲其他名字就是删除该名字的文件,*代表所有)

rm -rf 或 rm * -rf删除当前文件夹

ls(查看当前文件夹下的文件)

mkdir test(在当前文件夹下创建一个名为test的文件夹)

touch file(在当前文件夹下创建一个名为file的文件(文件和文件夹不一样))

cp file file2 (将file的内容复制给file2(创建file2,内容是file的内容))

cp Music/ MusicAgain -rf(强制将Music底下的文件复制给MusicAgain(创建MusicAgain内容是Music))

ip addr(获取ip地址)

vi demo.c (打开并编辑demo.c文件,如果 demo.c 文件不存在,vi 会新建一个名为 demo.c 的文件)

在vi里先按ESC然后再输入:wq表示保存并退出文件

  • :w 表示保存 (write) 文件。
  • :q 表示退出 (quit) 编辑器。
  •  i 文本编辑模式

gcc demo1.c(demo1是你的 C 源文件,包含了用 C 语言编写的代码。gcc 会读取该文件并尝试将其编译成可执行程序。运行 gcc demo1.c 后,gcc 会生成一个名为 a.out 的默认可执行文件(在当前目录中))

./a.out(打开根目录路径下的a.out)

ls -l(列出当前用户对各文件的权限)(可读(r,4)、可写(w,2)、执行(x,1))

man 2 open(查看open函数的用法(C))

mv [选项] 源文件或目录 目标文件或目录

在 Linux 中,mv 命令用于移动文件或目录,或者重命名文件或目录。以下是它的用法及常见选项:

基本语法

mv [选项] 源文件或目录 目标文件或目录

常见场景

  1. 移动文件到另一个目录

    mv file.txt /path/to/destination/

    file.txt 移动到 /path/to/destination/

  2. 重命名文件

    mv oldname.txt newname.txt

    将文件 oldname.txt 重命名为 newname.txt

  3. 移动目录

    mv dir1 /path/to/destination/

    将目录 dir1 移动到 /path/to/destination/

  4. 同时移动并重命名

    mv file.txt /path/to/destination/newname.txt

    file.txt 移动到 /path/to/destination/ 并重命名为 newname.txt

常用选项

  • -i(交互模式)
    在覆盖文件前提示用户确认:

    mv -i file.txt /path/to/destination/

  • -f(强制模式)
    覆盖目标文件时不提示,直接覆盖(默认行为):

    mv -f file.txt /path/to/destination/

  • -n(不覆盖已存在文件)
    如果目标文件已存在,不执行操作:

    mv -n file.txt /path/to/destination/

  • -v(显示详细过程)
    显示每一步操作的详细信息:

    mv -v file.txt /path/to/destination/

注意事项

  1. 如果目标路径是一个已存在的文件,mv 会覆盖它,除非使用 -n 或其他选项。
  2. 如果目标路径是一个已存在的目录,mv 会将源文件或目录移动到目标目录中。

示例

  1. 批量移动文件

    mv *.txt /path/to/destination/

    将当前目录下所有 .txt 文件移动到 /path/to/destination/

  2. 安全移动

    mv -i important.txt /path/to/safeplace/

    如果目标路径存在同名文件,mv 会提示确认是否覆盖。

  3. 查看移动过程

    mv -v data.csv /path/to/archive/

    详细显示移动的源和目标路径。

date(显示当前时间)

>(重定向符号)

        

  • 这是 Shell 中的输出重定向符号
  • 将命令的标准输出(默认是终端)重定向到指定的文件中。
  • 如果文件已经存在,重定向操作会清空文件内容并写入新的数据。
  • 如果文件不存在,重定向操作会创建该文件。

        可以这样理解,date > date.txt 是一种类似“赋值”的操作,但它不是传统意义上的变量赋值,而是将命令的输出重定向到文件,从而实现“赋值”效果。

与终端输出的区别

  • 仅运行 date:输出显示在终端。
  • 运行 date > date.txt:输出不会显示在终端,而是直接写入到 date.txt 文件。
  • 如果文件 date.txt 已存在,重定向会覆盖其内容。
  • 如果希望追加内容而不是覆盖,可以使用 >>:(date >> date.txt)

ps(它可以列出系统中正在运行的进程,显示进程的PID(进程ID)、状态、占用资源等信息。ps 命令有很多选项,可以根据需求来过滤、排序或格式化输出的结果。)

在Linux系统中,ps 是一个非常常用的命令,用于显示当前系统中的进程信息。它可以列出系统中正在运行的进程,显示进程的PID(进程ID)、状态、占用资源等信息。ps 命令有很多选项,可以根据需求来过滤、排序或格式化输出的结果。

常见用法:

  1. 查看当前用户的进程

    ps
    

    这会列出当前用户正在运行的进程。

  2. 查看所有进程(包括其他用户的进程)

    ps -e
    

    或者:

    ps -A
    

    这会显示系统上所有正在运行的进程。

  3. 查看详细信息

    ps -ef
    

    这个命令会显示所有进程的详细信息,包括进程ID、父进程ID、启动时间、占用的CPU和内存等。

  4. 查看进程树

    ps -ejH
    

    或者:

    ps axjf
    

    这个命令以树状结构显示进程之间的关系。

  5. 根据进程名过滤

    ps aux | grep <process_name>
    

    通过管道结合 grep 来查找特定进程的详细信息。

常用选项:

  • -e-A:列出所有进程
  • -f:显示完整的进程信息,包括父进程ID(PID)、启动时间等
  • -u :显示指定用户的进程
  • -x:显示没有控制终端的进程(后台进程)
  • -H:显示进程的父子关系(进程树)
  • -o :自定义输出格式

通过组合这些选项,ps 能够帮助用户获取详细的进程状态信息,并对系统的性能进行监控和调优。

ps auxps 命令的一个常见用法,它用于显示系统上所有正在运行的进程,包括其他用户的进程,并且提供了非常详细的信息。

解释:

  • a:显示所有用户的进程,而不仅仅是当前用户的进程。包括其他用户的进程。
  • u:以用户友好的格式显示进程信息,列出进程的所有者、CPU占用率、内存占用率、启动时间等。
  • x:包括没有控制终端的进程,通常是一些后台进程或者守护进程。

输出内容:

ps aux 命令的输出通常包括以下几列:

  • USER:进程所属的用户
  • PID:进程的ID
  • %CPU:进程占用的CPU百分比
  • %MEM:进程占用的内存百分比
  • VSZ:进程占用的虚拟内存大小(以KB为单位)
  • RSS:进程占用的实际物理内存大小(以KB为单位)
  • TTY:进程所关联的终端(如果有的话)
  • STAT:进程状态,例如:
    • S:睡眠状态(等待事件发生)
    • R:运行状态(正在运行或准备运行)
    • Z:僵尸状态(进程已终止但仍在进程表中)
  • START:进程的启动时间
  • TIME:进程占用的CPU时间
  • COMMAND:启动该进程的命令

示例:

ps aux

输出示例:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.1  0.0  22588  1684 ?        Ss   09:20   0:02 /sbin/init
root         2  0.0  0.0      0     0 ?        S    09:20   0:00 [kthreadd]
...

这种格式的输出非常适合用来查看系统的整体进程状态,尤其是在进行性能调优、资源管理或故障排查时。

常见组合:

  • 查找某个进程

    ps aux | grep <process_name>
    

    这可以帮助查找某个特定进程(比如 grep 查询命令)。

  • 查看进程占用最多的资源

    ps aux --sort=-%cpu
    

    按照CPU占用率排序(从高到低)。

    ps aux --sort=-%mem
    

    按照内存占用率排序(从高到低)。

ps aux 是一个非常强大的工具,能够帮助你全面了解系统的进程状态,并帮助诊断和优化系统性能。

top(类似windows的任务管理器)

top 是一个实时监控 Linux 系统资源(如 CPU、内存)和进程的命令。它动态显示系统状态,并可以对进程进行排序、过滤和管理。

常用功能:

  • 实时显示资源使用:显示 CPU、内存、交换空间等使用情况。
  • 动态更新:默认每 3 秒刷新一次。
  • 交互式命令:按 P 按 CPU 排序、按 M 按内存排序、按 k 杀死进程等。
  • 显示进程树:按 V 查看进程的父子关系。

示例:

top

显示的内容包括:

  • 系统负载、CPU 使用率、内存使用等。
  • 进程列表:PID、进程名、CPU 和内存占用等。

退出:按 q 退出 top

相关文章:

Linux(ubuntu)系统的一些基本操作和命令(持续更新)

操作&#xff1a; Ctrl Alt T&#xff08;打开命令终端&#xff09; Ctrl Shift &#xff08;放大命令终端窗口&#xff09; Ctrl c&#xff08;退出当前在终端运行的程序&#xff09; 在命令终端窗口按Tab键可以补全要写的命令 命令&#xff1a; pwd&#xff08;查…...

【NLP高频面题 - 分布式训练】ZeRO1、ZeRO2、ZeRO3分别做了哪些优化?

【NLP高频面题 - 分布式训练】ZeRO1、ZeRO2、ZeRO3分别做了哪些优化&#xff1f; 重要性&#xff1a;★★ NLP Github 项目&#xff1a; NLP 项目实践&#xff1a;fasterai/nlp-project-practice 介绍&#xff1a;该仓库围绕着 NLP 任务模型的设计、训练、优化、部署和应用&am…...

android 安全sdk相关

前述 在网上有看到许多android安全sdk相关的内容&#xff0c;有重复的也有比较新鲜的内容&#xff0c;这里做一个整体的合集&#xff0c;以及后续又看到一些比较新的东西会一起放在这里。 android内sdk目前可以分为以下几个部分&#xff08;有一些部分可能会存在一些重合&#…...

NVR监测软件EasyNVR多个NVR同时管理:录播主机的5条常见问题与解决办法

视频监控广泛应用于城市治安、交通管理、商业安保及家庭监控等领域。在使用EasyNVR平台管理多个NVR设备时&#xff0c;尤其是涉及到海康录播主机的场景中&#xff0c;使用者可能会遇到一些常见问题。本文将探讨海康录播主机的五个常见问题及其解决办法。 1、海康录播主机的5条常…...

Z2400027基于Java+SpringBoot+Mysql+thymeleaf引擎的图书馆管理系统的设计与实现 代码 论文

图书馆管理系统的设计与实现 一、项目背景与简介二、系统总体功能三、运行环境与技术选型四、系统架构与模块划分五、系统界面截图六、源码获取 一、项目背景与简介 项目背景&#xff1a; 随着信息技术的不断发展和图书资源的日益丰富&#xff0c;图书馆作为知识传播和学习的重…...

完美解决Docker pull时报错:https://registry-1.docker.io/v2/

1、错误描述 rootubuntu-database:/opt/dify/docker# docker compose up -d [] Running 9/9✘ api Error context canceled …...

A051-基于Spring Boot的网络海鲜市场系统的设计与实现

&#x1f64a;作者简介&#xff1a;在校研究生&#xff0c;拥有计算机专业的研究生开发团队&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取&#xff0c;记得注明来意哦~&#x1f339; 赠送计算机毕业设计600…...

【组件】前端ElementUi 下拉Tree树形组件 带模糊搜索自动展开高亮功能 树结构 封装为组件使用

【组件】前端ElementUi 下拉Tree树形组件 带模糊搜索自动展开高亮功能 树结构 【组件】前端ElementUi 下拉Tree树形组件 带模糊 https://live.csdn.net/v/436057 单独使用 <template><div><el-popoverstyle"overflow-y: auto; "placement"bottom…...

Blender 运行python脚本

Blender 运行python脚本 步骤 1&#xff1a;打开 Blender 首先&#xff0c;打开 Blender 软件。你可以从官方网站 [blender.org]( 下载最新的 Blender 版本&#xff0c;并按照安装向导进行安装。 步骤 2&#xff1a;打开“文本编辑器”面板 在 Blender 的默认布局中&#xff…...

递归:求fib数列的第n项,前几项是1,1,2,3,5,每一项都等于前面两项的和:JAVA

链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网 来源&#xff1a;牛客网 求fib数列的第n项&#xff0c;前几项是1&#xff0c;1&#xff0c;2&#xff0c;3&#xff0c;5,每一项都等于前面两项的和 输入描述: 输入一个整数n&#xff0c;n<46 输出描述: 输出一个…...

三分钟快速掌握——Linux【vim】的使用及操作方法

一、vim的使用 vim是一个文本编辑器 非常小巧轻便 1.1如何进入vim编辑器 方法一&#xff1a; 首先使用touch 1.c 创建一个源文件 然后使用vim 1.c进入 方法二&#xff1a; 直接使用指令 vim 2.c 会直接创建一个2.c的源文件 退出时记得保存&#xff08;使用wq或者x&am…...

Wrapper包装类

包装类又叫封装类&#xff0c;Java的数据类型有两种&#xff0c;基础数据类型是基础的&#xff0c;从狭义的角度看它们不是面向对象的&#xff0c;在引用数据类型中&#xff0c;有八个引用数据类型对应了八个基础数据类型&#xff0c;这个八个引用数据类型就叫做基础数据类型的…...

MySQL高级(六):全局锁、表锁和行锁

全局锁 (Global Lock) 定义 全局锁作用于整个 MySQL 实例。加上全局锁后&#xff0c;整个数据库实例会被锁定&#xff0c;其他线程无法对数据库中的任何表或数据进行读写操作。 使用方式 通过命令 FLUSH TABLES WITH READ LOCK (FTWRL) 来加全局锁。 特点 影响范围&#…...

【CLIP】3: semantic-text2image-search允许局域网访问

前后端都是局域网的在同一局域网内的其他设备上,打开浏览器,访问 http://192.168.50.197:5173/。前端 前端默认是本地的 (semantic-text2image-search) root@k8s-master-pfsrv:/home/zhangbin/perfwork/01_ai/01_semantic-text2image-search/frontend# npm run dev> web@…...

FPGA实现GTP光口视频转USB3.0传输,基于FT601+Aurora 8b/10b编解码架构,提供3套工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目我这里已有的 GT 高速接口解决方案本博已有的FPGA驱动USB通信方案 3、工程详细设计方案工程设计原理框图输入Sensor之-->OV5640摄像头输入Sensor之-->芯片解码的…...

docker搭建nginx

一. 直接启动nginx镜像 1. 下载nginx镜像 docker pull nginx 2. 运行镜像 docker run -p 8080:80 --name web -d nginx 3. 网址查看 xx.xx.xx.xx:8080 二. 挂在文件启动nginx镜像 1. 拷贝docker文件到本地 docker cp web:/etc/nginx/nginx.conf /root/data/config/nginx…...

Java 17的新特性及其对现代Java开发的影响

Java 17作为一个长期支持&#xff08;LTS&#xff09;版本&#xff0c;于2021年9月14日发布&#xff0c;引入了多项重要的新特性&#xff0c;这些特性不仅提高了Java语言的表现力和安全性&#xff0c;还优化了性能。本文将详细介绍Java 17的关键新特性&#xff0c;并探讨这些特…...

【Flink】快速理解 FlinkCDC 2.0 原理

快速理解 FlinkCDC 2.0 原理 要详细理解 Flink CDC 原理可以看看这篇文章&#xff0c;讲得很详细&#xff1a;深入解析 Flink CDC 增量快照读取机制 (https://juejin.cn/post/7325370003192578075)。 FlnkCDC 2.0&#xff1a; Flink 2.x 引入了增量快照读取机制&#xff0c;…...

使用R的数据包快速获取、调用各种地理数据

数据一直是科学研究绕不开的话题&#xff0c;为了方便快捷的获取各种地理数据&#xff0c;许多R包被开发出来&#xff0c;今天介绍一些方便快捷的数据R包。 rnaturalearth 包使 Natural Earth 数据可用。自然地球特征包括 1&#xff1a;10m、1&#xff1a;50m 和 1&#xff1a…...

scrapy豆瓣爬虫增强-批量随机请求头

1.1 豆瓣爬虫增强,中间件随机请求头 1.2 清除原有的中间件,进行中间件测试 1.3 导入全新的中间件 1.4 运行爬虫,这个时候的请求头是固定的 1.5 强化对agent的输出,会舍弃输出cookie,使输出更明了 1.6 转移输出请求头位置 新增输出 造成这样问题的原因是Douban/Douban/settings…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

ElasticSearch搜索引擎之倒排索引及其底层算法

文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

【Java学习笔记】BigInteger 和 BigDecimal 类

BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点&#xff1a;传参类型必须是类对象 一、BigInteger 1. 作用&#xff1a;适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

在Ubuntu24上采用Wine打开SourceInsight

1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...

Mysql8 忘记密码重置,以及问题解决

1.使用免密登录 找到配置MySQL文件&#xff0c;我的文件路径是/etc/mysql/my.cnf&#xff0c;有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...