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 流量控制、窗口控制和拥塞控制的关系 流量控制、窗口控制和拥塞控制的关系如图所示 窗口控制是上层的概念,核心思路是基于滑动窗口技术传输数据。而确定发送窗口大小的方法有流量控制和拥塞控制两种 流量控制&…...
conda相比python好处
Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理:…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
Rust 开发环境搭建
环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行: rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu 2、Hello World fn main() { println…...
AxureRP-Pro-Beta-Setup_114413.exe (6.0.0.2887)
Name:3ddown Serial:FiCGEezgdGoYILo8U/2MFyCWj0jZoJc/sziRRj2/ENvtEq7w1RH97k5MWctqVHA 注册用户名:Axure 序列号:8t3Yk/zu4cX601/seX6wBZgYRVj/lkC2PICCdO4sFKCCLx8mcCnccoylVb40lP...
数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)
名人说:莫道桑榆晚,为霞尚满天。——刘禹锡(刘梦得,诗豪) 原创笔记:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 上一篇:《数据结构第4章 数组和广义表》…...
高分辨率图像合成归一化流扩展
大家读完觉得有帮助记得关注和点赞!!! 1 摘要 我们提出了STARFlow,一种基于归一化流的可扩展生成模型,它在高分辨率图像合成方面取得了强大的性能。STARFlow的主要构建块是Transformer自回归流(TARFlow&am…...
初探用uniapp写微信小程序遇到的问题及解决(vue3+ts)
零、关于开发思路 (一)拿到工作任务,先理清楚需求 1.逻辑部分 不放过原型里说的每一句话,有疑惑的部分该问产品/测试/之前的开发就问 2.页面部分(含国际化) 整体看过需要开发页面的原型后,分类一下哪些组件/样式可以复用,直接提取出来使用 (时间充分的前提下,不…...
