Linux基本操作
以前搞个小本本做的笔记有时候笔记本找不到很多命令也记不全故此记录一些较为常用的基本操作目录1、查看命令1.1、查看Linux系统1.2、查看当前文件夹路径1.3、查看某文件夹下所有文件属性1.4、切换目录2、查看硬盘空间信息2.1查看硬盘空间2.2 查看当前文件夹下各文件占用空间大小2.3查看总磁盘可以查看哪个文件占用大3、压缩包操作3.1 压缩 -r命令是包括子目录3.2 解压3.3 压缩工具压缩率对比3.3.1 ZSTD 压缩与解压日常备份首选压缩强、速度快3.3.2 xz 压缩与解压3.3.3 gzip 压缩与解压系统默认压缩一般仅应急3.4 常用附加使用参数3.4.1、排除缓存或者临时文件3.4.2、保留权限、属主系统完整备份必备3.4.3、增量备份只备份新增修改文件大幅减少备份体积4、搜索(定位)文件各种方法4.1、whereis4.2、find(最通用的搜索方法)4.3、locate(速度快好用)5、删除文件6、修改保存环境变量6.1 查看环境变量6.2、编辑环境变量6.3、刷新环境变量7、vim文本操作7.1打开编辑文本只是打开还不能编辑7.2 插入编辑7.3 保存退出7.4不保存强制退出7.5编写一个sh脚本自动sudo明文8、Linux文件权限8.1、更改文件夹权限8.2、更改文件夹权限(包括所有子文件夹)8.3、新建文件夹时候赋予权限9、设置桌面快捷方式9.1新建desktop文件设置执行脚本和图片9.2 把desktop建立软链接到桌面来9.3把desktop设置为可执行程序10 动态库设置10.1 临时办法使用export办法如下图本博客第6章节10.1 永久解决办法配置conf文件11 用户管理11.1修改用户名密码11.2新建用户11.3给指定用户管理员权限11.4删除用户11.5 查看所有用户11.6 显示当前系统上登录的用户信息11.7 显示最近登录系统的用户信息11.8 终止原有用户进程12 Linux C代码计时13、软件安装13.1、软件安装方法13.2、软件默认安装位置、查看及清理方法13.2、软件卸载1、查看命令1.1、查看Linux系统cat/proc/versionuname-alsb_release-a1.2、查看当前文件夹路径pwd1.3、查看某文件夹下所有文件属性ls-lrt 文件夹路径该参数不写默认是当前路径文件夹1.4、切换目录cd 待切换目录绝对路径2、查看硬盘空间信息2.1查看硬盘空间df-h2.2 查看当前文件夹下各文件占用空间大小du-sh*2.3查看总磁盘可以查看哪个文件占用大baobab3、压缩包操作3.1 压缩 -r命令是包括子目录zip-r xxx.zipxxx3.2 解压unzip xxx.ziptar-zxvf xxx.tar.gzgz文件两次解压gzip-dOpenCV\4.0.1.tar.gztar-xvfOpenCV\4.0.1.tartar-xjvffilename.tar.bz2# 解压并显示详细过程参数说明-x解压-j指定 bzip2 解压算法-v输出解压过程-f指定文件名3.3 压缩工具压缩率对比zipgzbz2xzzstd(最高压缩档)同等测试数据gzip -9基准体积 100%xz -9e约 65%75%zstd -19约 70%80%速度远快于 xz多个目录一起打包再压缩不要分开压缩节省冗余空间用 tar 打包多目录管道传给压缩工具一次性生成单备份文件。3.3.1 ZSTD 压缩与解压日常备份首选压缩强、速度快# 语法tar 打包多个目录 | zstd 最高压缩 备份包.zsttar-cf- /dir1 /dir2 /mnt/disk/data /opt/work|zstd-19-obackup_$(date%Y%m%d).zst参数说明-19zstd 最高压缩级别极致节省磁盘$(date %Y%m%d)自动按日期命名备份方便管理-cf -打包输出到标准输出不生成中间临时文件省磁盘解压方法zstd-dbackup_20260721.zst|tar-xf-3.3.2 xz 压缩与解压适合冷备份、不频繁解压追求最小体积压缩tar-cf- /home/user /var/log /mnt/storage|xz-9e-cfull_backup_$(date%Y%m%d).tar.xz-9exz 极限压缩参数比普通 gz 小 15%~30%解压xz-dfull_backup.tar.xz|tar-xf-# 或一步解压tar-Jxffull_backup.tar.xz3.3.3 gzip 压缩与解压系统默认压缩一般仅应急压缩率不如上面两个不推荐用来省空间压缩命令tar-zcfbackup.tar.gz /dir1 /dir23.4 常用附加使用参数3.4.1、排除缓存或者临时文件–exclude 忽略不需要备份的目录 可以进一步缩小压缩包体积如tar-cf- /home /opt\--exclude/home/*/.cache\--exclude/tmp\--exclude/var/tmp\--exclude*.log|zstd-19-obackup.zst3.4.2、保留权限、属主系统完整备份必备加 -p 参数保存文件权限tar-pcf- /dir1 /dir2|zstd-19-obackup.zst3.4.3、增量备份只备份新增修改文件大幅减少备份体积配合 --newer-mtime 只备份指定日期后改动文件tar-pcf- /home --newer-mtime2026-07-01|zstd-19-oinc_backup.zst4、搜索(定位)文件各种方法4.1、whereiswhereis xxx4.2、find(最通用的搜索方法)find $path-name 文件名4.3、locate(速度快好用)locate 文件名5、删除文件谨慎使用rm-rf 要删除的文件路径或者文件夹6、修改保存环境变量6.1 查看环境变量见我另一个博客的小插曲直接截图如下6.2、编辑环境变量vim~/.bashrc6.3、刷新环境变量source~/.bashrc7、vim文本操作7.1打开编辑文本只是打开还不能编辑vim 文件绝对路径7.2 插入编辑按“i”键7.3 保存退出先按“esc”键再按“shif;”键最后输入wq7.4不保存强制退出先按“esc”键再按“shif;”键最后输入q!7.5编写一个sh脚本自动sudo明文sh脚本就是将命令行写进去类似windows的*.bat脚本或者*.cmd脚本文件但是如果sudo执行的时候需要输入密码这里就说怎样写一个将密码放进去的sh脚本原理通过 echo 命令将密码通过管道传递给 sudo -S-S 表示从标准输入读取密码。#!/bin/bash# 注意密码明文存储存在安全风险PASSWORD你的管理员密码COMMAND需要执行的命令# 例如apt update# 传递密码并执行命令echo$PASSWORD|sudo-S$COMMAND使用方法chmodx auto_sudo.sh ./auto_sudo.sh8、Linux文件权限600只有所有者读和写的权限644所有者读和写权限组和用户只有读权限700只有所有者读、写、执行权限666每个人都有读和写的权限777每个人都有读、写、执行权限更多可以查看这里8.1、更改文件夹权限chmod777filePath/DirPath8.2、更改文件夹权限(包括所有子文件夹)#第一步用cd切换到要更换权限的文件夹#第二步使用下面命令chmod777*-R8.3、新建文件夹时候赋予权限mkdir-m777DirPath在当前路径新建了一个所有人可读、写、执行的test文件夹9、设置桌面快捷方式以设置pycharm桌面快捷方式为例9.1新建desktop文件设置执行脚本和图片sudo vim/usr/share/applications/pycharm.desktop内容如下Exec设置的是sh文件路径Icon设置的是图片路径其他名字也根据自己需要进行设置[Desktop Entry]Version2022.1.3EncodingUTF-8Namepycharm Commentpycharm Execsh/home/QL/softWare/pycharm-community-2022.1.3/bin/pycharm.sh Icon/home/QL/softWare/pycharm-community-2022.1.3/bin/pycharm.png TerminalfalseTypeApplication CategoriesApplication;Network;Tencent Software;StartupNotifytrueName[zh_CN]Pycharm GenericName[zh_CN]Comment[zh_CN]Pycharm9.2 把desktop建立软链接到桌面来ln-s/usr/share/applications/pycharm.desktop/home/QL/桌面/pycharm.desktop这时候桌面有pycharm.desktop的快捷方式但是双击的时候还是txt文件打开不能运行9.3把desktop设置为可执行程序sudo chmodx pycharm.desktop10 动态库设置C/C编译可执行程序时当静态库和动态库同时存在时优先使用动态库。编译程序后想要运行一个程序会提示缺少动态库。按照Windows的常规操作会将缺少的动态库拷贝到执行程序同级目录后程序可以正常执行。但是有时候往往动态库太多了都扔在一个文件夹找程序非常费劲参考链接Linux——动态库10.1 临时办法使用export办法如下图本博客第6章节10.1 永久解决办法配置conf文件1、conf文件路径/etc/ld.so.conf.d新建conf文件文件名可以自定义后缀是.conf2、将缺少的lib路径写入.conf文件中保存退出3、更新环境变量sudo ldconfig样例11 用户管理11.1修改用户名密码通过执行命令行修改用户密码执行代码如下su sudo passwd 用户名其中需要将“用户名”为需要更改密码的用户账户敲回车后按照提示输入新密码即可如11.2新建用户sudo adduser 用户名执行后会提示输入密码和其他各种信息其他各种信息可以不用输入直接敲回车按照默认设置即可11.3给指定用户管理员权限su sudo usermod-aG sudo 新用户名先切换root用户再进行赋权限到新用户下面或者执行sudo adduser 新用户名 sudo最后切换新用户使用sudo命令看看能否正常执行11.4删除用户sudo deluser 用户名11.5 查看所有用户cat/etc/passwd或者getentpasswd11.6 显示当前系统上登录的用户信息显示包括用户名、登录时间、登录终端等w或者who11.7 显示最近登录系统的用户信息包括用户名、登录时间、登录终端等。通过查看最近登录用户linux命令详解词典我们可以追踪系统的使用历史。last11.8 终止原有用户进程1、先新建一个用户避免用户删了进不了系统sudoadduser tempadminsudousermod-aGsudotempadmin2、在删除用户前应该先终止原有进程对用户进行注销sudopkill-u原用户名sudopkill-9-u原用户名3、登录刚刚注册的新用户tempadmin再将老用户删掉即可sudodeluser 原用户名sudorm-rf/home/原用户名12 Linux C代码计时Linux系统的计时代码如果使用Window的计时方法容易溢出导致计时错误常规windows 计时方法#includetime.hclock_t t1clock();...clock_t t2clock();doubletakeTime(t2-t1)/CLOCKS_PER_SEC;Linux计时方法方法1#includesys/time.hstructtimevalstart,end;doublestart_t,end_t,t_diff;gettimeofday(start,NULL);for(unsignedinti0;i2000;i){pg.insert(point);}gettimeofday(end,NULL);start_tstart.tv_secdouble(start.tv_usec)/1e6;end_tend.tv_secdouble(end.tv_usec)/1e6;t_diffend_t-start_t;printf(%%Insertion Time: %.9f \n,t_diff);方法2直接获取时间戳通过时间戳做差可以获取最终的时间#includeiostream#includeunistd.h#includetime.h#includesys/time.h// linuxintmain(){time_t t1;time(t1);std::couttime_t :t1std::endl;sleep(5);//seep 5 sec ,need #include unistd.htime_t t2;time(t2);doubletakeTimet2-t1;printf(All done,take time:%lf s!\n,takeTime);}13、软件安装13.1、软件安装方法对于ubuntu系统一般使用sudo apt-get install 命令进行软件安装13.2、软件默认安装位置、查看及清理方法apt-get install命令下载的安装包默认存储在/var/cache/apt/archives路径下‌。例如查看该路径下到底有啥如果需要清理这些下载的安装包可以使用sudo apt-get clean命令来删除该路径下的下载的deb包‌此外apt-get install命令会将软件包安装到系统默认的路径中通常是/usr/bin、/usr/lib等目录。具体来说可执行文件会存储在/usr/bin目录下库文件会存储在/usr/lib目录下配置文件和文档等则会存储在/usr/share目录下‌13.2、软件卸载aptautoremove xxx eg. 卸载cmakesudoaptautoremove cmake

相关新闻

abap通过PI平台实现rest json的接收

abap通过PI平台实现rest json的接收

之前做系统集成都是用soap协议,由于大部分人没有接触过soap,所以学习了po端开发rest接口,方便对接,实现记录如下: ESB配置后台正常做配置 IB配置 接口配置 通道配置在erp系统上的sproxy激活,写个测试代码 使…

2026/7/22 15:40:44阅读更多 →
【小程序毕业设计】基于 SpringBoot 的博物馆票务预约管理系统文博场馆预约登记与客流统计平台 (源码+文档+远程调试,全bao定制等)

【小程序毕业设计】基于 SpringBoot 的博物馆票务预约管理系统文博场馆预约登记与客流统计平台 (源码+文档+远程调试,全bao定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/22 15:38:44阅读更多 →
Radmin LAN:使用完全指南(2026最新)

Radmin LAN:使用完全指南(2026最新)

Radmin LAN是一款专注于组建虚拟局域网的软件。简单来说,它能把身处不同地理位置(比如你家和你朋友家,甚至跨国)的电脑,瞬间“拉”到同一个局域网里。 Radmin LAN 永久免费,所有核心组网功能、联机功能、设…

2026/7/22 15:38:44阅读更多 →
AXI中的burst有几种?都用在什么场景中

AXI中的burst有几种?都用在什么场景中

AXI中的burst有几种?都用在什么场景中 摘要:在 AXI (Advanced eXtensible Interface) 协议中,Burst 传输是数据传输的基本方式,用于提高传输效率。AXI 定义了三种 Burst 类型:FIXED、INCR 和 WRAP。每种 Burst 类型适用于不同的场景,其行为和地址计算方式也不同。…

2026/7/22 16:42:55阅读更多 →
Pinpix:电脑截图工具的首选

Pinpix:电脑截图工具的首选

一键截长图、自动识别文字,可以把截图直接贴在屏幕上方便对照,贴图标注随心改,一键另存为或者复制到剪贴板,这样一款截图软件你是否需要呢,让我们一起来看看吧! 基本功能 截图、贴图、截图并复制等常用功…

2026/7/22 16:42:55阅读更多 →
GD32F470移植CH395Q实现TCP协议

GD32F470移植CH395Q实现TCP协议

tcp_client配置 第一步:资料下载 以太网协议栈芯片 CH395 - 南京沁恒微电子股份有限公司 第二步:准备工程 (1) 首先准备一个编译无报错、可以正常打印和延时的工程文件,官方例程采用STM32F1芯片,但本文采用GD32F470芯片 (2)将例程代码中的PUB文件夹加入,keil工程…

2026/7/22 16:42:55阅读更多 →
自学嵌入式 day 17- c语言-第11章 结构体与共用体 第12章 位运算

自学嵌入式 day 17- c语言-第11章 结构体与共用体 第12章 位运算

第十一章 结构体与共用体11.1 结构体声明:struct Student //结构名,符合标识符规则,第一个字母大写{int id;char name;float score;};定义:struct Student(结构名) s(变量名);s.id 1;//“ . ”结构体运算符,优先级…

2026/7/22 16:42:55阅读更多 →
计算机毕业设计之自媒体平台设计与实现

计算机毕业设计之自媒体平台设计与实现

本论文主要论述了如何使用JSP技术开发一个自媒体平台设计与实现,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述自媒体平台设计与实现的当前背景以及系统开发的…

2026/7/22 16:42:55阅读更多 →
嵌入式视频开发实战:VPDMA与HD_VENC_D寄存器配置与调试指南

嵌入式视频开发实战:VPDMA与HD_VENC_D寄存器配置与调试指南

1. 项目概述与核心价值 在嵌入式多媒体开发,尤其是基于德州仪器(TI)DaVinci或类似SoC平台进行高清视频应用开发时,工程师迟早会与两个核心硬件模块正面交锋: 视频处理直接内存访问(VPDMA) 和 …

2026/7/22 16:40:54阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 0:53:59阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/22 0:53:59阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/22 0:53:59阅读更多 →
中小企业小程序开发公司怎么选:预算、上手和售后避坑指南

中小企业小程序开发公司怎么选:预算、上手和售后避坑指南

中小企业做小程序,最常见的矛盾是预算有限,但又不希望功能太单薄;没有技术团队,但又希望后续能自己运营;想快速上线,又担心隐性收费和售后失联。选型时如果只看“低价套餐”或“案例数量”,很容…

2026/7/22 0:01:17阅读更多 →
GEO优化如何沉淀长期内容资产?广拓时代谈AI搜索时代的内容ROI

GEO优化如何沉淀长期内容资产?广拓时代谈AI搜索时代的内容ROI

企业做营销,最怕钱花完了,资产没有留下。 效果广告能带来一段时间的曝光,但预算停止后,流量往往也随之停止。短视频内容可能在几天内冲高,也可能很快沉下去。AI搜索时代,企业需要重新思考一个问题&#xff…

2026/7/22 0:01:17阅读更多 →
Agent 终态判定:何时该停止思考、给出最终回复

Agent 终态判定:何时该停止思考、给出最终回复

Agent 终态判定:何时该停止思考、给出最终回复 一、你的 Agent 在"再想想"的循环里绕了 12 轮,用户已经关窗口了 Agent 与人最大的区别是:人知道什么时候该停下来给答案,Agent 会一直"想"下去。你给 Agent 接…

2026/7/22 0:01:17阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/21 22:53:50阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/21 18:53:30阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/21 18:53:30阅读更多 →