Linux 常用命令整理大全及命令使用心得
本文章是为了总结自己用过的命令,以及一些心得,网上有很多类似的,但自己总结才能更好的理解。
文章目录
- 一、文件和目录管理
- 01、 ls :列出目录内容
- 02、cd:更改当前目录
- 03、pwd:显示当前工作目录
- 04、mkdir:创建新目录
- 05、rmdir:删除空目录
- 06、rm:删除文件或目录
- 07、cp:复制文件或目录
- 08、mv:移动或重命名文件或目录
- 09、touch:创建一个空文件或更新文件的时间戳
- 10、cat:连接文件并打印到标准输出
- 11、more 和 less:分页查看文件内容
- 12、head 和 tail 查看文件的开头或结尾部分
- 二、修改文件 vi 或 vim
- 01、vi 编辑器的 3 种模式
- 02、使用 vi 或 vim 打开文件
- 03、使用 vi 或 vim 编辑文件
- 04、使用 vi 或 vim 保存文件
- 05、使用 vi 或 vim 取消编辑
- 三、文件搜索和查找
- 01、find:在目录中搜索文件或目录
- 02、grep:搜索文件中的文本
- 03、locate:快速查找文件(依赖于预构建的数据库)
- 四、系统信息和监控
- 01、top:实时显示系统性能信息,包括CPU、内存使用情况等
- 五、用户和权限管理
- 01、su:切换到另一个用户(通常需要root权限)
- 02、sudo:以另一个用户的身份执行命令(通常是root)
- 03、chmod:更改文件或目录的权限
- 04、chown:更改文件或目录的所有者
- 05、useradd:添加用户
- 06、userdel:删除用户
- 07、groupadd:添加用户组
- 08、groupdel:删除用户组
- 六、网络管理
- 01、ping:测试到另一台主机的网络连接。
- 02、ifconfig:显示或配置网络接口
- 03、ip:显示或配置网络接口
- 04、netstat:显示网络连接、路由表、接口统计等
- 05、ss:更现代的替代品,用于显示套接字统计信息
- 06、curl:从网络下载文件
- 07、wget:从网络下载文件
- 七、软件包管理
- 01、apt:(Debian/Ubuntu系)- 管理软件包
- 02、yum:(Red Hat/Fedora系)- 管理软件包
- 03、dnf:(Red Hat/Fedora系)- 管理软件包
- 04、pacman:(Arch Linux)- 管理软件包
一、文件和目录管理
01、 ls :列出目录内容
ls
:展示文件夹下所有文件。常用
ls -l
:以长格式显示文件和目录的详细信息。ls -a
:显示包括隐藏文件在内的所有文件。ls -lh
:以人类可读的格式显示文件大小。ls -lSr
:查看⽂件和⽬录列表(以⽂件⼤⼩升序查看)tree
:查看⽂件和⽬录的树形结构 (如果没有需要先安装 yum install tree)ls -R
:连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来。
02、cd:更改当前目录
cd ..
:返回上一级目录。常用
cd ~
:返回用户主目录。cd /path/to/directory
:切换到指定目录。常用
- 这个命令可以配合
tab
键使用,用于补全文件名,使用模糊搜索,如果模糊搜索到多个文件,tab
补全不生效。
- 这个命令可以配合
03、pwd:显示当前工作目录
pwd
:命令就是这个。
04、mkdir:创建新目录
mkdir wen
:创建目录mkdir rjw wen
:同时创建两个目录mkdir -p /path/to/directory
:递归创建目录,包括必要的父目录。
05、rmdir:删除空目录
rmdir wen
:删除目录
06、rm:删除文件或目录
rm file
:删除文件。rm -r directory
:递归删除目录及其内容。rm -rf directory
:强制递归删除目录及其内容,不提示确认。rm -rf dir1
:删除dir1
⽬录和其内容。rm -rf dir1 dir2
:同时删除两个⽬录及其内容。
07、cp:复制文件或目录
cp file1 file2
:复制文件。cp -r directory1 directory2
:递归复制目录。cp dir/* .
:复制某目录下的所有文件至当前目录。cp -a dir1 dir2
:复制dir1
目录到dir2
目录。cp -a /temp/dir1 .
:复制一个目录至当前目录。
08、mv:移动或重命名文件或目录
mv oldname newname
:重命名文件或目录。mv file /path/to/directory
:移动文件到指定目录。
09、touch:创建一个空文件或更新文件的时间戳
touch wen.txt
:创建一个空白文件。touch -a "2020-10-10 15:34" wen.txt
:仅修改访问时间。黑客常用
touch -m "2020-10-10 15:34" wen.txt
:仅修改修改时间。黑客常用
touch -d "2020-10-10 15:34" wen.txt
:修改访问和修改时间。黑客常用
10、cat:连接文件并打印到标准输出
cat file
:查看文件内容。cat -n file1
:标示文件的行数。cat file1 file2 > file3
:合并文件内容到file3
。
11、more 和 less:分页查看文件内容
more file
:逐页查看文件内容。less file
:类似more
,但功能更强大,支持向前翻页,有方向。
12、head 和 tail 查看文件的开头或结尾部分
head file
:查看文件的前10行。tail file
:查看文件的后10行。tail -n 20 file
:查看文件的后20行。tail -f file
:实时跟踪文件内容更新(常用于查看日志文件)。
二、修改文件 vi 或 vim
01、vi 编辑器的 3 种模式
命令模式(command mode
)、插入模式(Insert mode
)和底行模式(last line mode
)
-
命令行模式(
command mode
):控制屏幕光标的移动,字符、字或行的删除和查找,移动复制某区段及进入Insert mode
下,或者到last line mode
。- 控制光标移动:
↑,↓,j
。 - 删除当前行:
dd
。 - 查找:
/字符
,会在底部显示。 - 进入编辑模式:
i o a
。 - 进入底行模式:
:
。
- 控制光标移动:
-
编辑模式(
Insert mode
):只有在Insert mode
下,才可以做文字输入,按ESC
键可回到命令行模式。ESC
退出编辑模式到命令行模式。
-
底行模式(
last line mode
):将文件保存或退出vi
,也可以设置编辑环境,如寻找字符串、列出行号等。- 退出编辑:
:q
。 - 强制退出:
:q!
。 - 保存并退出:
:wq
。
- 退出编辑:
02、使用 vi 或 vim 打开文件
vi example.txt
:打开文件。vim example.txt
:打开文件。- 两者功能相同,没有区别。
注意:使用 vi
编辑器打开文件后,处于命令模式
,不能编辑,需要点击键盘 i / a / o
进入编辑模式才能编辑。
03、使用 vi 或 vim 编辑文件
- 使用
vi
编辑器打开文件后点击按键i / a / o
进入编辑模式。 i
:在光标所在字符前开始插入。a
:在光标所在字符后开始插入。o
:在光标所在行的下面另起一新行插入。
04、使用 vi 或 vim 保存文件
- 处于编辑模式时:
ESC
进入命令行模式。:
进入底行模式。:wq
保存并退出编辑。:q
不保存退出编辑。:q!
不保存强制退出编辑。
- 处于命令模式时:
:
进入底行模式。:wq
退出编辑。
05、使用 vi 或 vim 取消编辑
ESC
:进入命令行模式。:
:进入底行模式。q!
:撤销本次修改并退出编辑。
三、文件搜索和查找
01、find:在目录中搜索文件或目录
基本语法:find [起始目录] [匹配条件] [操作]
。
find /path/to/search -name filename
:查找名称匹配特定模式的文件。find / -name filename
:从/
开始进入根文件系统搜索文件和目录(完整文件或文件名)find /path/to/search -name "*.tmp" -exec rm {} \
:查找并删除文件。find /path/to/search -name "*.sh" -exec chmod +x {} \
:查找并更改文件权限。find /home -name "*.log" -ls
:查找/home
目录下所有扩展名为.log
的文件,并显示其详细信息。find /path/to/search -iname "*.LOG"
:查找名称忽略大小写的匹配。find /path/to/search -type f
:查找文件,使用type
类型,file
。find /path/to/search -type d
:查找目录,使用type
类型,directory
。find /path/to/search -size +100M
:查找大于100MB
的文件。find /path/to/search -size -1k
:查找小于1KB
的文件。find /path/to/search -mtime -7
:查找在过去7 天
内修改过的文件。find /usr/bin -type f -atime +100
:搜索在过去100天内未被使用过的执行文件。find /path/to/search -perm 755
:查找权限为755
的文件。find /path/to/search -user username
:查找属于特定用户的文件。find / -user user1
:搜索属于用户user1
的文件和目录。find /path/to/search -group groupname
:查找属于特定组的文件。find /path/to/search \( -name "*.txt" -a -size +1k \)
:查找满足多个条件的文件AND
。find /path/to/search \( -name "*.txt" -o -name "*.log" \)
:查找满足任一条件的文件OR
。find /var/log -size +10M -exec rm {} \
:查找/var/log
目录下大于10MB
的文件,并删除它们。find /etc -user root -exec chmod 644 {} \
:查找/etc
目录下所有属于root
用户的文件,并修改其权限为644
。find /tmp -mtime +7 -exec mv {} /old_files/ \
:查找/tmp
目录下 7 天前修改的文件,并移动到/old_files
目录。find . -regex '.*\(net\|comm\).*'
:-regex
选项匹配整个路径名,出当前目录树中所有文件名中任意位置包含字符串net
或comm
的文件。
在使用 find
命令时,尤其是带有 -exec
选项时,请务必小心,因为错误的操作可能会导致数据丢失。
02、grep:搜索文件中的文本
grep "text" file
:在文件中搜索包含指定文本的行。grep -r "text" /path
:递归搜索目录中的文件。
03、locate:快速查找文件(依赖于预构建的数据库)
locate filename
:查找包含指定名称的文件。
四、系统信息和监控
01、top:实时显示系统性能信息,包括CPU、内存使用情况等
-
htop
- 类似于top,但提供了更友好的界面(需要安装)。 -
df
- 显示磁盘使用情况。df -h
:以人类可读的格式显示。
-
du
- 显示目录或文件的磁盘使用情况。du -sh /path
:显示指定目录的总大小。
-
free
- 显示内存使用情况。free -h
:以人类可读的格式显示。
-
uptime
- 显示系统运行时间和平均负载。 -
ps
- 显示当前运行的进程。ps aux
:显示所有用户的所有进程。
-
kill
- 终止进程。kill PID
:根据进程ID终止进程。kill -9 PID
:强制终止进程。
五、用户和权限管理
01、su:切换到另一个用户(通常需要root权限)
su username
:切换到指定用户。
02、sudo:以另一个用户的身份执行命令(通常是root)
sudo command
:以root权限执行命令。
03、chmod:更改文件或目录的权限
chmod 755 file
:设置文件权限。
04、chown:更改文件或目录的所有者
chown user:group file
:更改文件的所有者和组。
05、useradd:添加用户
sudo useradd username
:添加用户。
06、userdel:删除用户
sudo userdel username
:删除用户。
07、groupadd:添加用户组
sudo groupadd groupname
:添加用户组。
08、groupdel:删除用户组
sudo groupdel groupname
:删除用户组。
六、网络管理
01、ping:测试到另一台主机的网络连接。
ping hostname
:发送ICMP ECHO_REQUEST报文到指定主机。
02、ifconfig:显示或配置网络接口
ifconfig
:显示网络接口信息。
03、ip:显示或配置网络接口
ip a
:显示网络接口信息。
04、netstat:显示网络连接、路由表、接口统计等
netstat -tuln
:显示监听中的TCP和UDP端口。
05、ss:更现代的替代品,用于显示套接字统计信息
ss -tuln
:显示监听中的TCP和UDP端口。
06、curl:从网络下载文件
curl http://example.com
:使用curl下载文件。
07、wget:从网络下载文件
wget http://example.com
:使用wget下载文件。
七、软件包管理
01、apt:(Debian/Ubuntu系)- 管理软件包
sudo apt update
:更新包列表。sudo apt install package
:安装包。sudo apt remove package
:卸载包。
02、yum:(Red Hat/Fedora系)- 管理软件包
sudo yum update
:更新包列表。sudo yum install package
:安装包。sudo yum remove package
:卸载包。
03、dnf:(Red Hat/Fedora系)- 管理软件包
sudo dnf update
:更新包列表。sudo dnf install package
:安装包。sudo dnf remove package
:卸载包。
04、pacman:(Arch Linux)- 管理软件包
sudo pacman -Syu
:更新系统和软件包。sudo pacman -S package
:安装包。sudo pacman -R package
:卸载包。
相关文章:

Linux 常用命令整理大全及命令使用心得
本文章是为了总结自己用过的命令,以及一些心得,网上有很多类似的,但自己总结才能更好的理解。 文章目录 一、文件和目录管理01、 ls :列出目录内容02、cd:更改当前目录03、pwd:显示当前工作目录04、mkdir&a…...

计算器的实现
计算器的⼀般实现 计算器的一般实现:优化:使⽤函数指针数组的实现: 计算器的一般实现: #include <stdio.h> int add(int a, int b) {return a b; } int sub(int a, int b) {return a - b; } int mul(int a, int b) {retur…...

这个工具帮你快速实现数据集成和同步
在这个信息爆炸的时代,数据的流动和同步逐渐成为企业运营的命脉。然而,企业正面临着前所未有的数据挑战,无论是跨地域的分公司协作,还是云服务与本地数据库的交互,数据的集成、清洗、转换和加载(ETL&#x…...

论文阅读:Computational Long Exposure Mobile Photography (一)
这篇文章是谷歌发表在 2023 ACM transaction on Graphic 上的一篇文章,介绍如何在手机摄影中实现长曝光的一些拍摄效果。 Abstract 长曝光摄影能拍出令人惊叹的影像,用运动模糊来呈现场景中的移动元素。它通常有两种模式,分别产生前景模糊或…...

项目解决方案:多地连锁药店高清视频监控系统建设解决方案(设计方案)
目录 一.项目背景 1.1背景描述 1.2需求分析 二.设计依据和建设目标 2.1设计依据 2.2建设目标 三.系统设计实现 3.1系统方案设计 3.2网络组网说明 四.建设系统特色 4.1安全性 4.2节约建设成本 4.3原有资源的再利用 4.4可扩展性 五.产品介绍 5.1概述 5.2设备…...

utf-8、pbkdf2_sha
#utf-8加密、解密 import base64 base64.b64encode(lienlien123.encode(utf-8)) bbGllbmxpZW4xMjM base64.b64decode(bbGllbmxpZW4xMjM.decode(utf-8)) blienlien123 #pbkdf2_sha加密,校验 # 该种密码在不同时刻会有产生不同的加密结果 # 该加密方法使用的是散列…...

Java之包,抽象类,接口
目录 包 导入包 静态导入 将类放入包 常见的系统包 抽象类 语法规则 注意事项: 抽象类的作用 接口 实现多个接口 接口间的继承 接口使用实例 (法一)实现Comparable接口的compareTo()方法 (法二)实现Comp…...

HarmonyOS鸿蒙开发入门,常用ArkUI组件学习(二)
书接上回,让我们继续来学习ArkUI的其他组件 目录,可以点击跳转到想要了解的组件详细内容 组件四:Button组件五:Slider组件六: Column & Row组件七:循环控制组件八: List 组件四:…...

斩!JavaScript语法进阶
一、DOM 概述 DOM 是 JavaScript 操作网页的接口,全称为“文档对象模型”(Document Object Model)。当网页被加载时,浏览器将网页转为一个DOM,并用JS进行各种操作。比如:改变页面中的HTML 元素及其属性&am…...

UFO:Windows操作系统的具象智能代理
近年来,随着AI技术的发展,智能代理在各种应用中扮演着越来越重要的角色。微软推出的UFO(User-Focused Operator)正是这样一个出色的多代理框架,旨在通过无缝导航和操作,满足用户在Windows操作系统中跨多个应…...

win10/11无休眠设置和断电后电池模式自动休眠而不是睡眠-用以省电
1、打开休眠设置选项 打开控制面板\所有控制面板项\电源选项\ 左侧的选择电源按钮的功能 默认状态没有休眠 1、管理员权限打开cmd或者power shell 2、输入一下指令,打开休眠选项 powercfg -hibernate on关闭后重新打开 控制面板\所有控制面板项\电源选项\左侧的选…...

【动态规划之斐波那契数列模型】——累加递推型动态规划
文章目录 第N个泰波那契数列面试题08.01.三步问题使用最小花费爬楼梯解码问题 第N个泰波那契数列 解题思路: 泰波那契数列的第 N 项定义为前面三项之和,即 T0 0, T1 1, T2 1,从 T3 开始,每一项都等于前三项的和。要找到第 N 项…...

5g通信系统用到的crc码
5g通信系统用到的crc码 关注 在5G通信系统中,CRC码(循环冗余校验码)扮演着关键角色,它通过执行多项式除法运算来检测数据在传输过程中是否发生错误。5G通信系统中采用了多种CRC码,每种码都有其独特的计算方法和校验特…...

Ubuntu-22.04 虚拟机安装
1. Ubuntu安装方式 1.1. 基于物理介质安装 光盘安装:通过将 Ubuntu 镜像刻录到光盘,在计算机 BIOS/UEFI 中设置光盘为第一启动项,然后按照安装程序的提示进行语言选择、分区、用户信息设置等操作来完成安装。这种方式需要有光盘刻录设备和空…...

Windows、Linux系统上进行CPU和内存压力测试
CPU和内存压力测试 1. Linux环境 Linux环境下,我们可以用 stress 工具进行内存、CPU等的压力测试。 【1】. stress工具说明 [kalamikysrv1 ~]$ stress --help stress imposes certain types of compute stress on your systemUsage: stress [OPTION [ARG]] ...-…...

FFmpeg 4.3 音视频-多路H265监控录放C++开发八,使用SDLVSQT显示yuv文件 ,使用ffmpeg的AVFrame
一. AVFrame 核心回顾,uint8_t *data[AV_NUM_DATA_POINTERS] 和 int linesize[AV_NUM_DATA_POINTERS] AVFrame 存储的是解码后的数据,(包括音频和视频)例如:yuv数据,或者pcm数据,参考AVFrame结…...

HTML 标签属性——<a>、<img>、<form>、<input>、<table> 标签属性详解
文章目录 1. `<a>`元素属性hreftargetname2. `<img>`元素属性srcaltwidth 和 height3. `<form>`元素属性actionmethodenctype4. `<input>`元素属性typevaluenamereadonly5. `<table>`元素属性cellpaddingcellspacing小结HTML元素除了可以使用全局…...

css简写属性
一些属性,如 font、background、padding、border 和 margin 等属性称为简写属性。它们允许在一行中设置多个属性值,从而节省时间并使代码更整洁。 /* 在像 padding 和 margin 这样的 4 值简写语法中,数值的应用顺序是上、右、下、左ÿ…...

力扣刷题(sql)--零散知识点(2)
1.自定义分组后的分类统计问题(某组内无数据却仍要展示) 例题1: 查询每个工资类别的银行账户数量。 工资类别如下: "Low Salary":所有工资 严格低于 20000 美元。"Average Salary":…...

TCP是怎样工作的网络拥塞控制理论和算法部分记录
参考资料 https://github.com/ituring/tcp-book 流量控制、窗口控制和拥塞控制的关系 流量控制、窗口控制和拥塞控制的关系如图所示 窗口控制是上层的概念,核心思路是基于滑动窗口技术传输数据。而确定发送窗口大小的方法有流量控制和拥塞控制两种 流量控制&…...

CSRF初级靶场
靶场 针对DVWA么有防御 源码: <?phpif( isset( $_GET[ Change ] ) ) {// Get input$pass_new $_GET[ password_new ];$pass_conf $_GET[ password_conf ];// Do the passwords match?if( $pass_new $pass_conf ) {// They do!$pass_new ((isset($GLOBA…...

CSP/信奥赛C++刷题训练:经典差分例题(2):洛谷P9904 :Mieszanie kolorów
CSP/信奥赛C++刷题训练:经典差分例题(2):洛谷P9094 :Mieszanie kolorw 题目描述 题目译自 PA 2020 Runda 1 Mieszanie kolorw Byteasar 正准备给栅栏涂漆。他已经准备了 n n n 罐白色油漆,他把这些油漆排列成一排,从 1 1 1 到 n n n 编号。他想用这些油漆,但他不想…...

Java | Leetcode Java题解之第525题连续数组
题目: 题解: class Solution {public int findMaxLength(int[] nums) {int maxLength 0;Map<Integer, Integer> map new HashMap<Integer, Integer>();int counter 0;map.put(counter, -1);int n nums.length;for (int i 0; i < n;…...

YOLOv8改进 - 注意力篇 - 引入iRMB注意力机制
#YOLO# #目标检测# #计算机视觉# 一、本文介绍 作为入门性篇章,这里介绍了iRMB注意力在YOLOv8中的使用。包含iRMB原理分析,iRMB的代码、iRMB的使用方法、以及添加以后的yaml文件及运行记录。 二、iRMB原理分析 iRMB官方论文地址:文章 iR…...

项目学习总结
文章目录 项目学习总结项目中的vw适配vw使用 封装axios实例axios常见请求配置axios响应结构axios拦截器配置Vue Router全局前置守卫 项目学习总结 在智慧商城项目中的学习总结。 项目中的vw适配 vw 是一种长度单位,代表视口宽度的百分比。1vw 等于视口宽度的1%。…...

用于低成本接收机的LoRa SF11 500KHz波形检测解调算法
前一篇里,获取了LORAwan的物理层波形,并通过Octave查看了它的瞬时频率。LoRa是私有协议,网上已经有了很不错的开源的实现,如: S2_LoRa通信实验 LoRaPhy 以及GNU-Radio的Lora模块、LimeSDR的Lora实现。当我试图修改上…...

WEB防护
WEB防护的范围比较广,主要是指针对web安全而做的各种防御措施, 包含应对xss、csrf等漏洞攻击的应对方式。 Web防护是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品, 主要用于防御针对网络应用层的攻击࿰…...

使用Jest进行JavaScript单元测试
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Jest进行JavaScript单元测试 引言 Jest 简介 安装 Jest 创建基本配置 编写测试用例 运行测试 快照测试 模拟函数 代码覆盖率…...

网络安全法详细介绍——爬虫教程
目录 [TOC](目录)一、网络安全法详细介绍1. 网络安全法的主要条款与作用2. 网络安全法与爬虫的关系3. 合法使用爬虫的指南 二、爬虫的详细教程1. 准备环境与安装工具2. 使用requests库发送请求3. 解析HTML内容4. 使用robots.txt规范爬虫行为5. 设置请求间隔6. 数据清洗与存储 三…...

PCB什么情况该敷铜,什么情况不该敷铜!
更多电路设计,PCB设计分享及分析,可关注本人微信公众号“核桃设计分享”! 这个是老生常谈的问题了,可私底下还是有很多小伙伴问核桃这个问题,所以今天就好好聊一聊这个话题。 先说结论:PCB不是什么时候都可…...