Linux——基础命令3
1、关机重启命令
reboot指令
作用:重启计算机
语法:reboot
shutdown指令
作用:关机
语法:shutdown -h 时间
时间常见的值:
now (立即关机)
+m(m表示minutes数字)eg:shutdown -h +5 表示5分钟之后关机
2、进程管理 ps
选项:
-f (显示所有字段(UID、PPIP、C、STIME字段))
-ef (显示所有进程)
-h (不显示标题)
-l (长格式)
-w (宽输出)
-a (显示一个终端的所有进程)
-r (只显示正在运行的进程)
-u (显示当前用户进程和内存使用情况)
-x (显示没有控制终端的进程)
–sort (按照列名排序)
2.1 ps -ef 查看所有进程的全部字段

字段解释:
UID:用户ID,即进程的拥有者
PID:进程ID
PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程被称为僵尸进程
C:cpu的占用率,形式是百分数(%)
STIME:进程开始启动时间
TTY:终端设备,发起该进程的设备识别符号,如果显示‘ ?’表示该进程并不是由终端发起
TIME:进程的执行时间
CMD:该进程的名称或对应的路径
2.2 ps -aux 查看所有包含其他使用者的进程

字段解释:
USER:创建进程的用户
PID:进程ID
%CPU:进程占用CPU的百分比
%MEM:进程占用物理内存的百分比
VSZ:进程占用虚拟内存的大小(单位KB)
RSS:进程占用实际物理内存的大小(单位KB)
TTY:进程在哪个终端运行。
STAT:进程状态
START:进程开始启动的时间
TIME:进程使用的CPU(运算)时间
COMMAND:调用进程的命令
2.3 查看CPU(内存)占用率最高的进程
(1)查看进程的时候,让进程按照CPU使用率排序,然后展示前10个进程,就能清晰地看到哪些进程占用的资源比较多
ps -aux --sort=-pcpu | head -11 查看进程占cpu百分比,降序排列
注1:head -11 (因为标题也算一行)
注2:+、-号可以调整排序,eg:-pcpu表示降序;+pcpu表示升序
(2)同理,把-pcpu 换成-pmem,就能查看内存使用最多的10个进程
ps -aux --sort=-pmem | head -11 查看进程占内存百分比,降序排列
3、编辑器之神 vim
安装vim环境:
sudo apt-get install vim
sudo apt-get install ctags
三种模式:

3.1 编辑模式:对代码的修改(复制、粘贴、剪切等等)【按Esc键进入】
(1)复制、粘贴、剪切
[n]yy(复制从当前行的n行) eg:4yy
[d]dd (删除(剪切)从当前行开始的n行) eg:4dd
p (粘贴)
u (撤销前面多次修改;ctrl+r 反撤销)
[n]x(删除光标后n个字符) eg:3x
[n]X(删除光标前n个字符) eg:3X
yw(复制一个单词)
. (执行上一次操作)
(2)移动光标:h===>向左移动;j=====>向下移动;k======>向上移动;l=====>向右移动(或者上下左右键)
shift+zz(按住shift 同时按下两次zz) (保存并退出)
[n]G(光标移动到第n行开始处) eg:5G光标移到第5行开始处
G(光标移到文件结束处)
g(光标移到文件开始处)
(3)查找字符串
:/字符串(从光标开始处向文件尾处查找字符串)
n(同一方向重复上一次的查找命令)
N(反方向重复查找命令)
(4)替换字符串
str1:原来的字符串;str2:新的字符串
:s/str1/str2 (当前行只替换第一个)
:s/str1/str2/g (当前行全部替换)
:.,$ s/str1/str2 (从当前行到最后一行,只替换每行的第一个)
:.,$ s/str1/str2/g (从当前行到最后一行,全部替换,等价于全文替换)
:% s/str1/str2/g (全文替换)
3.2 插入模式:用户编辑代码 【按Ins、i、o键进入】
3.3 命令行模式(最后一行模式):保存、退出、另存为【按:键进入】
w-----保存;q------退出;!-----强制执行
:w (保存文件)
:wq (保存并退出vim)
:x (保存文件并退出vim)
:q!(不保存文件强制退出)
:w filename (另存为filename)
:!pwd(可以快速查询当前文件所在目录)
:!date (可以快速查看当前时间)
:set number (给文件设置行号) 可以简写为 :set nu
:set nonumber (取消行号) 可以简写为 :set nonu
4、gcc编译
gcc编译C语言的过程有4步:
1、预处理(头文件展开、宏替换、删除注释、条件编译),生成.i文件
gcc -E main.c -o main.i
2、将预处理后的文件转换成汇编语言(进行语法检测),生成.s文件
gcc -S main.i -o main.s
3、转成二进制文件,生成.o文件
gcc -C main.s -o main.o
4、链接目标代码,生成可执行程序
gcc main.o -o main.out
5、最后可以执行可执行程序,运行代码
执行命令:./main.out
编译一步到位:gcc main.c -o main.out
5、给普通用户添加sudo权限
(1)切换到root:su root 或者 su
(2)安装sudo:apt-get install sudo
如果无法安装sudo,先下载apt-get update再执行apt-get install sudo,就把sudo安装上了
(3)查看sudoers配置文件的权限情况:ls -l /etc/sudoers
(4)设置sudoers配置文件的权限,给root用户添加w权限:chmod u+w /etc/sudoers
(5)修改sudoers配置文件:gedit /etc/sudoers

将圈起来的代码添加上
(6)测试lm是否可以有sudo权限
切换到lm用户,执行:sudo cat /etc/shadow
相关文章:
Linux——基础命令3
1、关机重启命令 reboot指令 作用:重启计算机 语法:reboot shutdown指令 作用:关机 语法:shutdown -h 时间 时间常见的值: now (立即关机) m(m表示minutes数字)eg&…...
ChatGPT提问技巧:行业热门应用提示词案例-文案写作
ChatGPT 作为强大的 AI 语言模型,已经成为文案写作的得力助手。但要让它写出真正符合你需求的文案,关键在于如何与它“沟通”,也就是如何设计提示词(Prompt)。以下是一些实用的提示词案例,帮助你解锁 ChatG…...
python - 封装moondream(备份)
目录 一、 moondream封装成类 二、moondream封装成http api 一、 moondream封装成类 # moondream_model.py #https://github.com/vikhyat/moondream?tab=readme-ov-fileimport moondream as md from PIL import Imageclass MoondreamModel:def __init__(self, model_path):…...
响应式编程库(三) -r2dbc
r2dbc整合 什么是r2dbc版本选择简单试用整合springbootDatabaseClient 进行查询使用Repository接口(对应mapper)实体类复杂查询(一对一)实体类转换器测试代码一对多关系 什么是r2dbc 反应式关系数据库连接(R2DBC)项目为关系数据库…...
嵌入式AI革命:DeepSeek开源如何终结GPU霸权,开启单片机智能新时代?
2025年,全球AI领域最震撼的突破并非来自算力堆叠的超级模型,而是中国团队DeepSeek通过开源策略,推动大模型向微型化、低功耗场景的跨越。相对于当人们还在讨论千亿参数模型的训练成本被压缩到600万美金而言,被称作“核弹级别”的操…...
基于遗传算法的64QAM星座图的最优概率整形matlab仿真,对比优化前后整形星座图和误码率
目录 1.算法仿真效果 2.算法涉及理论知识概要 3.MATLAB核心程序 4.完整算法代码文件获得 1.算法仿真效果 matlab2022a仿真结果如下(完整代码运行后无水印): GA优化过程: 优化前后星座图对比: (优化后…...
从零开始玩转Docker:轻松开启容器化之旅
一、什么是 Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。简单来说,Docker 就像是一个超级 “快递箱”,…...
kafka生产端之架构及工作原理
文章目录 整体架构元数据更新 整体架构 消息在真正发往Kafka之前,有可能需要经历拦截器(Interceptor)、序列化器(Serializer)和分区器(Partitioner)等一系列的作用,那么在此之后又会…...
38、【OS】【Nuttx】OSTest分析(3):参数传递
背景 接之前 blog 36、【OS】【Nuttx】OSTest分析(2):环境变量测试 37、【OS】【Nuttx】OSTest分析(2):任务创建 分析完环境变量测试,和任务创建的一些关键要素,OSTest 进入下一阶段…...
存储异常导致的Oracle重大生产故障
📢📢📢📣📣📣 作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验 Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、MySQL、PG、高斯…...
C语言时间相关宏定义
在C语言中,预处理器提供了一些与时间相关的宏定义,用于在编译时获取日期、时间等信息。除了 __TIMESTAMP__ 和 __DATE__,还有以下相关的宏定义: __DATE__ 当前编译日期的字符串,格式为 "Mmm dd yyyy"&#x…...
Android Studio:Application 和 Activity的区别
Application 和 Activity 是 Android 中非常重要的两个组件,它们分别负责不同的生命周期管理和应用的不同层次的操作。 Application 是应用级别的生命周期管理,它在整个应用运行时只有一个实例,负责应用的全局初始化和资源管理。Activity 是…...
如何优化爬虫以提高搜索效率
在数据采集和网络爬虫领域,优化爬虫性能是提升数据采集效率的关键。随着网页结构的日益复杂和数据量的不断增长,高效的爬虫能够显著降低运行时间和资源成本。本文将详细介绍如何优化爬虫以提高搜索效率,包括选择合适的工具、优化代码逻辑、使…...
git撤销上一次的提交
1、撤销提交 如果需要撤销上一次的提交,只是提交到了本地,可以通过命令: // 撤销最近的提交(保留修改) git reset --soft HEAD~1 这个操作可以保留之前的提交和当前的修改。最近一次的提交到本地的修改的提交会回到…...
LLM学习笔记1——本地部署Meta-Llama-3.2-1B大模型
系列文章目录 参考博客 参考博客 文章目录 系列文章目录前言与调用一、部署要求二、实现步骤0.深度学习环境错误1,验证pytorch版本时提示以下问题:错误2,验证pytorch版本时提示以下问题:错误3,有时候还会提示你有一些…...
Nginx反代Ollama接口跨域、无法逐字输出问题
场景 本地部署deepseek模型,用的Ollama管理,内网穿透到公网,在通过nginx反代ollama接口。 问题描述 跨域问题 nginx转发时请求头中需要加入origin,并且origin还要和ollama接口同源(协议、ip、端口一致)。…...
大学资产管理系统中的下载功能设计与实现
大学资产管理系统是高校信息化建设的重要组成部分,它负责记录和管理学校内所有固定资产的信息。随着信息技术的发展,下载功能成为提高资产管理效率的关键环节之一。 系统架构的设计是实现下载功能的基础。一个良好的系统架构能够确保数据的高效传输和存储…...
股指入门:股指期货是什么意思?在哪里可以做股指期货交易?
股指期货是一种以股票指数为标的物的期货合约,也可以称为股票指数期货或期指。 股指期货是什么意思? 股指期货是一种金融衍生品,其标的资产是股票市场上的股指,例如标普500指数、道琼斯工业平均指数、上证50指数等。 股指期货允…...
< OS 有关 > 利用 google-drive-ocamlfuse 工具,在 Ubuntu 24 系统上 加载 Google DRIVE 网盘
Created by Dave On 8Feb.2025 起因: 想下载 StableDiffusion,清理系统文件时把 i/o 搞到 100%,已经删除到 apt 缓存,还差 89MB,只能另想办法。 在网上找能不能挂在 Google 网盘,百度网盘,或 …...
Golang的引用类型和指针
在Golang中,引用类型和指针是两个容易混淆的概念,但它们有本质的区别。理解它们的区别对于编写高效、正确的Go代码至关重要。 1. 引用类型 引用类型是Go语言中某些内置类型的统称,它们的值在传递时共享底层数据,而不是复制数据。…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
华为云AI开发平台ModelArts
华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)
Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败,具体原因是客户端发送了密码认证请求,但Redis服务器未设置密码 1.为Redis设置密码(匹配客户端配置) 步骤: 1).修…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
