Linux(ubuntu)系统的一些基本操作和命令(持续更新)
操作:
Ctrl + Alt + T(打开命令终端)
Ctrl + Shift + '+'(放大命令终端窗口)
Ctrl + c(退出当前在终端运行的程序)
在命令终端窗口按Tab键可以补全要写的命令
命令:
pwd(查看当前所在文件夹)
cd 文件路径(到指定文件路径下)
cat 文件路径 (查看该文件路径下文件的内容(在同目录的可以不用写前缀路径))
vi 文件路径(进入vi模式查看该文件路径下文件的内容(在同目录的可以不用写前缀路径))
rm / -rf(强制删除根文件)
-rf 是命令行中的选项,通常在 Linux/Unix 系统中使用 rm 命令时见到。它是两个选项的组合,分别是:
-
-r(recursive)
表示递归删除,用于删除目录及其所有子文件和子目录。没有这个选项,rm只能删除单个文件,不能直接删除目录。 -
-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 [选项] 源文件或目录 目标文件或目录
常见场景
-
移动文件到另一个目录
mv file.txt /path/to/destination/将
file.txt移动到/path/to/destination/。 -
重命名文件
mv oldname.txt newname.txt将文件
oldname.txt重命名为newname.txt。 -
移动目录
mv dir1 /path/to/destination/将目录
dir1移动到/path/to/destination/。 -
同时移动并重命名
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/
注意事项
- 如果目标路径是一个已存在的文件,
mv会覆盖它,除非使用-n或其他选项。 - 如果目标路径是一个已存在的目录,
mv会将源文件或目录移动到目标目录中。
示例
-
批量移动文件
mv *.txt /path/to/destination/将当前目录下所有
.txt文件移动到/path/to/destination/。 -
安全移动
mv -i important.txt /path/to/safeplace/如果目标路径存在同名文件,
mv会提示确认是否覆盖。 -
查看移动过程
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 命令有很多选项,可以根据需求来过滤、排序或格式化输出的结果。
常见用法:
-
查看当前用户的进程
ps这会列出当前用户正在运行的进程。
-
查看所有进程(包括其他用户的进程)
ps -e或者:
ps -A这会显示系统上所有正在运行的进程。
-
查看详细信息
ps -ef这个命令会显示所有进程的详细信息,包括进程ID、父进程ID、启动时间、占用的CPU和内存等。
-
查看进程树
ps -ejH或者:
ps axjf这个命令以树状结构显示进程之间的关系。
-
根据进程名过滤
ps aux | grep <process_name>通过管道结合
grep来查找特定进程的详细信息。
常用选项:
-e或-A:列出所有进程-f:显示完整的进程信息,包括父进程ID(PID)、启动时间等-u:显示指定用户的进程-x:显示没有控制终端的进程(后台进程)-H:显示进程的父子关系(进程树)-o:自定义输出格式
通过组合这些选项,ps 能够帮助用户获取详细的进程状态信息,并对系统的性能进行监控和调优。
ps aux 是 ps 命令的一个常见用法,它用于显示系统上所有正在运行的进程,包括其他用户的进程,并且提供了非常详细的信息。
解释:
- 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)系统的一些基本操作和命令(持续更新)
操作: Ctrl Alt T(打开命令终端) Ctrl Shift (放大命令终端窗口) Ctrl c(退出当前在终端运行的程序) 在命令终端窗口按Tab键可以补全要写的命令 命令: pwd(查…...
【NLP高频面题 - 分布式训练】ZeRO1、ZeRO2、ZeRO3分别做了哪些优化?
【NLP高频面题 - 分布式训练】ZeRO1、ZeRO2、ZeRO3分别做了哪些优化? 重要性:★★ NLP Github 项目: NLP 项目实践:fasterai/nlp-project-practice 介绍:该仓库围绕着 NLP 任务模型的设计、训练、优化、部署和应用&am…...
android 安全sdk相关
前述 在网上有看到许多android安全sdk相关的内容,有重复的也有比较新鲜的内容,这里做一个整体的合集,以及后续又看到一些比较新的东西会一起放在这里。 android内sdk目前可以分为以下几个部分(有一些部分可能会存在一些重合&#…...
NVR监测软件EasyNVR多个NVR同时管理:录播主机的5条常见问题与解决办法
视频监控广泛应用于城市治安、交通管理、商业安保及家庭监控等领域。在使用EasyNVR平台管理多个NVR设备时,尤其是涉及到海康录播主机的场景中,使用者可能会遇到一些常见问题。本文将探讨海康录播主机的五个常见问题及其解决办法。 1、海康录播主机的5条常…...
Z2400027基于Java+SpringBoot+Mysql+thymeleaf引擎的图书馆管理系统的设计与实现 代码 论文
图书馆管理系统的设计与实现 一、项目背景与简介二、系统总体功能三、运行环境与技术选型四、系统架构与模块划分五、系统界面截图六、源码获取 一、项目背景与简介 项目背景: 随着信息技术的不断发展和图书资源的日益丰富,图书馆作为知识传播和学习的重…...
完美解决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的网络海鲜市场系统的设计与实现
🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 赠送计算机毕业设计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:打开 Blender 首先,打开 Blender 软件。你可以从官方网站 [blender.org]( 下载最新的 Blender 版本,并按照安装向导进行安装。 步骤 2:打开“文本编辑器”面板 在 Blender 的默认布局中ÿ…...
递归:求fib数列的第n项,前几项是1,1,2,3,5,每一项都等于前面两项的和:JAVA
链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 求fib数列的第n项,前几项是1,1,2,3,5,每一项都等于前面两项的和 输入描述: 输入一个整数n,n<46 输出描述: 输出一个…...
三分钟快速掌握——Linux【vim】的使用及操作方法
一、vim的使用 vim是一个文本编辑器 非常小巧轻便 1.1如何进入vim编辑器 方法一: 首先使用touch 1.c 创建一个源文件 然后使用vim 1.c进入 方法二: 直接使用指令 vim 2.c 会直接创建一个2.c的源文件 退出时记得保存(使用wq或者x&am…...
Wrapper包装类
包装类又叫封装类,Java的数据类型有两种,基础数据类型是基础的,从狭义的角度看它们不是面向对象的,在引用数据类型中,有八个引用数据类型对应了八个基础数据类型,这个八个引用数据类型就叫做基础数据类型的…...
MySQL高级(六):全局锁、表锁和行锁
全局锁 (Global Lock) 定义 全局锁作用于整个 MySQL 实例。加上全局锁后,整个数据库实例会被锁定,其他线程无法对数据库中的任何表或数据进行读写操作。 使用方式 通过命令 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作为一个长期支持(LTS)版本,于2021年9月14日发布,引入了多项重要的新特性,这些特性不仅提高了Java语言的表现力和安全性,还优化了性能。本文将详细介绍Java 17的关键新特性,并探讨这些特…...
【Flink】快速理解 FlinkCDC 2.0 原理
快速理解 FlinkCDC 2.0 原理 要详细理解 Flink CDC 原理可以看看这篇文章,讲得很详细:深入解析 Flink CDC 增量快照读取机制 (https://juejin.cn/post/7325370003192578075)。 FlnkCDC 2.0: Flink 2.x 引入了增量快照读取机制,…...
使用R的数据包快速获取、调用各种地理数据
数据一直是科学研究绕不开的话题,为了方便快捷的获取各种地理数据,许多R包被开发出来,今天介绍一些方便快捷的数据R包。 rnaturalearth 包使 Natural Earth 数据可用。自然地球特征包括 1:10m、1:50m 和 1:…...
scrapy豆瓣爬虫增强-批量随机请求头
1.1 豆瓣爬虫增强,中间件随机请求头 1.2 清除原有的中间件,进行中间件测试 1.3 导入全新的中间件 1.4 运行爬虫,这个时候的请求头是固定的 1.5 强化对agent的输出,会舍弃输出cookie,使输出更明了 1.6 转移输出请求头位置 新增输出 造成这样问题的原因是Douban/Douban/settings…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
五子棋测试用例
一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏,有着深厚的文化底蕴。通过将五子棋制作成网页游戏,可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家,都可以通过网页五子棋感受到东方棋类…...
