【Linux】Linux基本命令
目录
文件和目录操作:
ls
cd
pwd
cp
mv
rm
mkdir
rmdir
touch
clear
history
which/whereis
文件查看和编辑:
cat
less
head
tail
vi 或 vim
sz/rz
echo
系统信息和管理:
su
uname
hostname
df
free
top
ps
kill
chmod
网络操作:
ping
ifconfig 或 ip
netstat
curl
Linux 是一个开源的操作系统内核,广泛应用于服务器、桌面、嵌入式系统和超级计算机等领域。它由 Linus Torvalds 于 1991 年首次发布,并由全球开发者社区共同维护和开发。以下是一些关于 Linux 的常用命令。
文件和目录操作:
ls
列出目录内容。
cd
切换目录。
pwd
(print working directory)查看当前目录所在位置。
cp
复制文件或目录。
命令:cp [-r] 参数1 参数2
命令解释:
-r选项, 可选,用于复制文件夹使用,表示递归
参数1,被复制的文件
参数2,复制去的地方
举例:cp -r a b
将源目录 a 及其所有内容(包括子目录和文件)复制到目标目录 b。
mv
移动或重命名文件或目录。
mv 参数1 参数2
- 被移动的文件或文件夹
- 移动去的地方路径
举例:mv a b
将源文件或目录 a 移动到目标文件或目录 b。
rm
删除文件或目录。
rm -rf 是一个非常强大且危险的命令,用于在 Linux 系统中删除文件和目录。它结合了两个选项:-r 和 -f。
命令解析
- rm:是一个用于删除文件和目录的命令。
- -r:-r 或 --recursive 选项表示递归删除,即删除目录及其所有子目录和文件。
- -f: -f 或 --force 选项表示强制删除,即不提示确认,忽略不存在的文件和目录。
mkdir
创建目录。
rmdir
删除空目录。
touch
创建文件。
clear
清除屏幕。
history
查看历史命令
which/whereis
查看程序安装目录
which命令 eg:which redis-server
which -a ls
-a:显示所有匹配的路径,而不仅仅是第一个匹配的路径。whereis命令 eg:whereis redis-server
文件查看和编辑:
cat
显示文件的内容。它会将文件的所有内容输出到标准输出(通常是终端)。
cat 文件名
less
用于分页显示文件的内容。它允许你逐页浏览文件内容,而不是一次性显示所有内容。
less 文件名
在 less 命令的界面中,你可以使用以下键盘快捷键来浏览文件内容:
Space或f:向下滚动一页。b:向上滚动一页。Enter:向下滚动一行。q:退出less命令。
head
用于显示文件的前几行。默认情况下,它显示文件的前 10 行。
head 文件名
你也可以指定显示的行数,例如显示前 5 行:
head -n 5 example.txt
tail
用于显示文件的后几行。默认情况下,它显示文件的后 10 行。
tail 文件名
你也可以指定显示的行数,例如显示后 5 行:
tail -n 5 example.txt实时监控文件
tail 命令还可以用于实时监控文件的变化。使用 -f 选项可以实时显示文件的新内容。
tail -f 文件名
假设你有一个名为 logfile.txt 的日志文件,你可以使用以下命令来实时监控文件的变化:
tail -f logfile.txt这个命令会显示文件 filename 的最后 100 行,并实时监控文件的变化。
tail -f -n 100 filename
vi 或 vim
强大的文本编辑器,查看文件中的内容。
示例
假设你有一个名为 example.txt 的文件,你想使用 vim 编辑它。你可以使用以下命令:
vim example.txt编辑文件进入插入模式:按 i 键。输入文本:例如,输入 Hello, world!。退出插入模式:按 Esc 键。保存并退出:输入 :wq 并按 Enter 键。搜索文本进入命令模式:按 Esc 键。输入 / 并键入要搜索的文本,例如 /world。按 Enter 键开始搜索。按 n 键跳转到下一个搜索结果。按 N 键跳转到上一个搜索结果。删除行进入命令模式:按 Esc 键。将光标移动到要删除的行。输入 dd 删除当前行。复制和粘贴进入命令模式:按 Esc 键。将光标移动到要复制的行。输入 yy 复制当前行。将光标移动到要粘贴的位置。输入 p 粘贴复制的内容。
sz/rz
sz 命令用于从 Unix/Linux 系统向 Windows 系统发送文件。
rz 命令用于从 Windows 系统向 Unix/Linux 系统接收文件。
上传和下载都是针对Unix/Linux来说的,这样就好记忆。(sz发送就是下载,rz接收就是上传。)
假设你有一个名为 example.txt 的文件,你想将其从 Unix/Linux 系统发送到 Windows 系统,可以使用以下命令:
sz example.txt假设你想从 Windows 系统接收一个文件,可以在 Unix/Linux 系统上运行以下命令:
rz或rz -y
-y表示如果名称重复直接进行覆盖。
echo
echo 是一个用于在终端输出文本的命令。它可以显示字符串、变量的值、特殊字符等。
语法:echo 文本
输出简单文本
假设你想在终端输出文本 "Hello, world!",可以使用以下命令:
echo Hello, world!
输出为:Hello, world!

系统信息和管理:
su
switch user,切换用户。eg:su root
uname
显示系统信息。
hostname
获取主机名,修改主机名
hostname
获取主机名hostnamectl set-hostname 主机名
修改主机名(需root)
df
显示文件系统的磁盘空间使用情况。
df -h
-h:以更加人性化的单位显示磁盘使用情况
free
显示内存使用情况。
free -m
用来显示内存使用情况,以MB为单位。
它的输出格式通常是这样的:
total used free shared buffers cached
Mem: 7983 6509 1474 199 104 3707
-/+ buffers/cache: 2697 5286
Swap: 16383 972 15411其中:
● total表示系统当前总内存大小。
● used表示当前已经使用的内存大小。
● free表示当前未使用的内存大小。
● shared表示被共享使用的内存大小,通常是进程间通信时使用的内存。
● buffers表示被缓冲的内存大小,通常是文件系统操作时使用的内存。
● cached表示被缓存的内存大小,通常是为了提高系统性能而缓存的内存。
另外,在 -/+ buffers/cache 行下面的 used 表示实际使用的内存大小,free 表示当前可用的内存大小。free命令支持几个选项,例如-b表示显示字节为单位,-k表示显示KB为单位,-g表示显示GB为单位等。
top
是一个实时监控系统性能的命令行工具,用于显示系统中的进程、CPU 使用率、内存使用率、负载平均值等信息。
python@ubuntu:~$ top
top - 08:31:54 up 2 min, 1 user, load average: 0.25, 0.37, 0.17
Tasks: 271 total, 1 running, 270 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.0 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 4028880 total, 3210104 free, 331668 used, 487108 buff/cache
KiB Swap: 4192252 total, 4192252 free, 0 used. 3414856 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4827 redis 20 0 47204 6632 2300 S 0.3 0.2 0:00.21 redis-ser+ 6371 python 20 0 49000 3896 3176 R 0.3 0.1 0:00.12 top 1 root 20 0 119940 6112 4004 S 0.0 0.2 0:02.77 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.11 ksoftirqd+
1. 系统性能概览:
a. 第一行显示系统的基本信息,包括当前时间、系统运行时间、用户数量、负载平均值等。
b. 第二行显示进程的状态信息,包括总进程数、运行中的进程数、睡眠中的进程数、停止的进程数、僵尸进程数等。
c. 第三行显示 CPU 使用率信息,包括用户空间占用的 CPU 时间、系统空间占用的 CPU 时间、空闲 CPU 时间等。
d. 第四行和第五行显示内存和交换区的使用情况,包括总内存、已用内存、空闲内存、缓冲区、缓存等。
2. 进程列表:
a. 进程列表显示系统中的各个进程,包括进程 ID(PID)、用户名(USER)、优先级(PR)、虚拟内存(VIRT)、物理内存(RES)、共享内存(SHR)、状态(S)、CPU 使用率(%CPU)、内存使用率(%MEM)、运行时间(TIME+)、命令名称(COMMAND)等。
ps
查询当前进程。
查询java的进程:ps -ef | grep java
grep:是一个用于搜索文本的命令。
java:是搜索的关键字。
|:管道符,将左边的输出结果当作右边的输入。

kill
终止进程。
kill -15(优雅)/-9(强制) PID(进程的PID)
kill -9 发送的是 SIGKILL 信号(信号编号为 9)。这个信号会立即终止进程,不允许进程进行任何清理操作。它是强制终止进程的方式,通常用于那些无法通过其他方式终止的进程
kill -15 发送的是 SIGTERM 信号(信号编号为 15)。这个信号是一个终止信号,但它允许进程进行清理操作(如关闭文件、释放资源等)。它是一种优雅的终止方式,通常用于正常终止进程。
chmod
是一个用于修改文件或目录权限的命令。chmod 是 "change mode" 的缩写,用于更改文件或目录的访问权限。
chmod 777 文件
chmod 777 是一个用于修改文件或目录权限的命令。chmod 是 "change mode" 的缩写,用于更改文件或目录的访问权限。777 是权限的数字表示形式。
权限的数字表示形式
在 Unix 和 Linux 系统中,文件和目录的权限分为三类:
1.用户(User):文件的所有者。
2.组(Group):文件所有者所属的组。
3.其他(Others):其他所有用户。
每类权限可以有以下三种权限:r w x
●读(Read):权限值为 4。
●写(Write):权限值为 2。
●执行(Execute):权限值为 1。
权限值是这三种权限的总和。例如:
●读和执行权限:4 + 1 = 5。
●读、写和执行权限:4 + 2 + 1 = 7。
777 的含义
777 表示所有用户(用户、组、其他)都有读、写和执行权限:
●用户:读、写、执行(7)。
●组:读、写、执行(7)。
●其他:读、写、执行(7)。

网络操作:
ping
检查指定的网络是否可以联通。
ping 127.0.0.1
ifconfig 或 ip
显示和配置网络接口。
netstat
显示网络连接和路由表。
常用选项-a:显示所有连接(包括监听的和未监听的)。netstat -a-t:显示 TCP 连接。netstat -t-u:显示 UDP 连接。netstat -u-n:以数字形式显示地址和端口号,而不是解析为主机名和服务名。netstat -n-p:显示进程 ID 和程序名。netstat -p-l:显示监听的连接。netstat -l-r:显示路由表。netstat -r-i:显示网络接口统计信息。netstat -i-s:显示网络协议统计信息。netstat -s组合使用
netstat命令查看端口是否被占用
netstat -anp | grep 端口号 eg:netstat -anp | grep 8080 (没有打印就说明没有被占用)netstat -tpln 用于显示系统中的所有 TCP 连接及其详细信息。
netstat -upln 用于显示系统中的所有 UDP 连接及其详细信息。
curl
curl 是一个强大的命令行工具,用于从命令行传输数据。它支持多种协议,包括 HTTP、HTTPS、FTP、SFTP、SCP、TFTP 等。curl 常用于下载文件、上传文件、发送 HTTP 请求等。
curl [选项] [URL]
常用选项-O:将文件保存到本地,使用远程文件的原始名称。curl -O http://example.com/file.txt-o:将文件保存到本地,使用指定的文件名。curl -o localfile.txt http://example.com/file.txt-L:跟随重定向。curl -L http://example.com/redirect-I:仅显示响应头信息。curl -I http://example.com-X:指定请求方法(GET、POST、PUT、DELETE 等)。curl -X POST http://example.com/api-d:发送 POST 数据。curl -X POST -d "param1=value1¶m2=value2" http://example.com/api-H:添加自定义请求头。curl -H "Content-Type: application/json" http://example.com/api-u:指定用户名和密码进行基本认证。curl -u username:password http://example.com/protected-k:忽略 SSL 证书验证。curl -k https://example.com-v:显示详细的请求和响应信息。curl -v http://example.com-s:静默模式,不显示进度条和错误信息。curl -s http://example.com-F:以表单数据的方式发送数据。curl -F "file=@/path/to/file" http://example.com/upload示例
下载文件假设你想从 http://example.com/file.txt 下载文件并保存为 localfile.txt,可以使用以下命令:curl -o localfile.txt http://example.com/file.txt发送 POST 请求假设你想向 http://example.com/api 发送一个 POST 请求,并包含一些表单数据,可以使用以下命令:curl -X POST -d "param1=value1¶m2=value2" http://example.com/api发送 JSON 数据假设你想向 http://example.com/api 发送一个 POST 请求,并包含 JSON 数据,可以使用以下命令:curl -X POST -H "Content-Type: application/json" -d '{"key1":"value1","key2":"value2"}' http://example.com/api上传文件假设你想将本地文件 /path/to/file 上传到 http://example.com/upload,可以使用以下命令:curl -F "file=@/path/to/file" http://example.com/upload 相关文章:
【Linux】Linux基本命令
目录 文件和目录操作: ls cd pwd cp mv rm mkdir rmdir touch clear history which/whereis 文件查看和编辑: cat less head tail vi 或 vim sz/rz echo 系统信息和管理: su uname hostname df free top ps ki…...
微软宣称其新工具可纠正人工智能幻觉 但专家依然对此表示怀疑
人工智能经常胡言乱语,微软现在说它有办法解决这个问题,但我们有理由对此持怀疑态度。微软今天发布了一项名为"更正"(Correction)的服务,它可以自动修改人工智能生成的与事实不符的文本。Correction 首先会标…...
实战OpenCV之图像滤波
基础入门 图像滤波是数字图像处理中一种非常重要的技术,主要用于图像噪声去除、图像平滑、突出图像特征,或者进行图像风格的转换。它通过数学运算对图像中的像素值进行修改,以达到特定的处理目的。图像滤波可以分为两大类,分别为:线性滤波、非线性滤波。 线性滤波器通过一…...
AI学习指南深度学习篇-Adadelta的Python实践
AI学习指南深度学习篇-Adadelta的Python实践 深度学习是人工智能领域的一个重要分支,近年来在各个领域都取得了显著的成就。在深度学习的模型训练中,优化算法起着至关重要的作用,其中Adadelta是一种常用的优化算法之一。本篇博客将使用Pytho…...
go webapi上传文件 部属到linux
go厉害的地方,linux服务器上无需安装任何依赖就可以运行,大赞! 一、编译 #在Goland中cmd中执行 go env -w GOARCHamd64 go env -w GOOSlinux go build main.go # 切换回来 否则无法运行 go env -w GOOSwindows go run main.go 拷贝到linux服…...
接口加解密及数据加解密
目录 一、 加解密方式介绍 1.1 Hash算法加密 1.2. 对称加密 1.3 非对称加密 二、 我们要讲什么? 三、 接口加解密 四、 数据加解密 一、 加解密方式介绍 所有的加密方式我们可以分为三类:对称加密、非对称加密、Hash算法加密。 算法内部的具体实现…...
开创远程就可以监测宠物健康新篇章
在宠物健康监测的新纪元,智能听诊器凭借其先进技术,正逐步改变我们对宠物健康监护的传统认知。这不仅是一款监测工具,而是宠物健康管理的得力助手,为宠物主人和兽医提供前所未有的洞察力和便捷性。 深度学习算法:智能…...
二叉树的基本概念(上)
文章目录 🍊自我介绍🍊简介🍊树的定义树中的专业术语树的分类 🍊二叉树的特性讲解 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以:点赞关注评论收藏(一键四连)哦~ 🍊自我介…...
aws s3 存储桶 前端组件上传简单案例
写一个vue3 上传aws oss存储的案例 使用到的插件 npm install aws-sdk/client-s3 注意事项 : 1. 本地调试 , 需要设置在官网设置跨域 必须!!! 否则调试不了 ,前端代理是不起作用的 ,因为是插…...
【开源免费】基于SpringBoot+Vue.JS墙绘产品展示交易平台(JAVA毕业设计)
本文项目编号 T 049 ,文末自助获取源码 \color{red}{T049,文末自助获取源码} T049,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…...
python爬虫初体验(四)—— 百度文库PPT的爬取
文章目录 1. 安装包2. 相关代码3. 说明4. 注意事项5. 扩展功能5.1 多页面下载5.2 输入地址下载 在Python 2中编写一个爬虫来大量下载图片,可以使用requests库来发送HTTP请求,并使用BeautifulSoup来解析HTML页面。此外,可以使用urllib2库来下载…...
下水道内缺陷识别检测数据集 yolo数据集 共2300张
下水道内缺陷识别检测数据集 yolo数据集 共2300张 下水道内部缺陷识别数据集(Sewer Interior Defect Recognition Dataset, SIDRD) 摘要 SIDRD 是一个专门针对下水道内部缺陷识别的数据集,旨在为城市基础设施维护和管理提供一个标准化的训练…...
年轻用户对Facebook的使用趋势分析
在社交媒体的蓬勃发展中,Facebook作为全球最大的社交平台之一,尽管面临着来自新兴平台的竞争,仍然在年轻用户中扮演着重要角色。然而,年轻用户对Facebook的使用方式和趋势却在不断变化。本文将探讨年轻用户对Facebook的使用趋势&a…...
EasyCVR全方位安全守护智慧电厂:构建高效视频监控系统优势分析
随着信息技术的飞速发展和数字化时代的到来,电厂作为能源供应的重要枢纽,其安全性和管理效率成为社会各界关注的焦点。为了满足电厂对高效、智能、可靠视频监控系统的需求,基于EasyCVR平台建设的电厂视频监控系统应运而生。 一、系统构成 基…...
基于深度学习的情感生成与交互
基于深度学习的情感生成与交互是一个新兴的研究领域,旨在通过深度学习技术生成具有情感的反应,以增强人机交互的自然性和有效性。该技术涉及情感识别、自然语言处理、计算机视觉等多个领域,并在多个应用场景中展现出潜力。 情感生成的主要方…...
JavaScript匿名函数
引言 JavaScript是一种广泛使用的脚本语言,用于Web开发和其他领域。在JavaScript中,函数是非常重要的组成部分,它们允许开发者组织代码、复用代码以及执行特定的任务。本文将探讨一种特殊的函数类型——匿名函数,并介绍如何使用它…...
线性判别分析(LDA)中计算两个类的中心点在投影方向w上的投影示例
通过一个具体的例子,详细说明 w T μ 0 w^T \mu_0 wTμ0 和 w T μ 1 w^T \mu_1 wTμ1 如何表示两个类的中心点在投影方向 w w w 上的投影。 假设: 我们有两个类的数据集,均值向量 μ 0 \mu_0 μ0 和 μ 1 \mu_1 μ1ÿ…...
前端知识——标签知识
1.p段落标签 ——一个p标签表示一个段落 单独占一行 >p标签里面不可以嵌套其它的块级标签(div h1~h6 p等) 会导致浏览器自动分裂成两个标签 不规范的写法 >但是可以包裹span标签 2.span标签 ——包裹文字标签 可以和span一行显示 3.文本格式化标签 ——给…...
使用Docker和cpolar在Linux服务器上搭建DashDot监控面板
使用Docker和cpolar在Linux服务器上搭建DashDot监控面板 前言环境准备安装Docker下载Dashdot镜像 部署DashDot应用本地访问DashDot服务安装cpolar内网穿透固定DashDot公网地址结语 前言 在这个数字化飞速发展的时代,服务器作为支撑各种应用和服务的基础设施…...
解决docker拉取镜像报错
报错信息如下: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)网上试了很多方式,有的需要配置DNS解析&…...
rknn优化教程(二)
文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...
UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...
云原生周刊:k0s 成为 CNCF 沙箱项目
开源项目推荐 HAMi HAMi(原名 k8s‑vGPU‑scheduler)是一款 CNCF Sandbox 级别的开源 K8s 中间件,通过虚拟化 GPU/NPU 等异构设备并支持内存、计算核心时间片隔离及共享调度,为容器提供统一接口,实现细粒度资源配额…...
书籍“之“字形打印矩阵(8)0609
题目 给定一个矩阵matrix,按照"之"字形的方式打印这个矩阵,例如: 1 2 3 4 5 6 7 8 9 10 11 12 ”之“字形打印的结果为:1,…...
图解JavaScript原型:原型链及其分析 | JavaScript图解
忽略该图的细节(如内存地址值没有用二进制) 以下是对该图进一步的理解和总结 1. JS 对象概念的辨析 对象是什么:保存在堆中一块区域,同时在栈中有一块区域保存其在堆中的地址(也就是我们通常说的该变量指向谁&…...
Qwen系列之Qwen3解读:最强开源模型的细节拆解
文章目录 1.1分钟快览2.模型架构2.1.Dense模型2.2.MoE模型 3.预训练阶段3.1.数据3.2.训练3.3.评估 4.后训练阶段S1: 长链思维冷启动S2: 推理强化学习S3: 思考模式融合S4: 通用强化学习 5.全家桶中的小模型训练评估评估数据集评估细节评估效果弱智评估和民间Arena 分析展望 如果…...
