【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解析&…...

C++之STL—deque容器
双端数组 区别于 vector (单端数组), 构造函数 注意:读取数据时,const修饰保证函数内只能读取,不能修改数据 void print(const deque<int>& deq) {for (deque<int>::const iterator it deq.begin(); it ! deq.e…...

leveldb前缀匹配查找Seek
个人随笔 (Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu) 参考:https://github.com/google/leveldb/blob/main/include/leveldb/db.h 参考:百度AI 1. 背景 最近偶然发现了,leveldb前缀匹配查找的功能。 之前没有从这个角度去想过See…...

【自动驾驶】ros如何隔绝局域网内其他电脑播包
1.问题 可能碰到自己播包的时候,别人播包的传到我们电脑上,导致无法分析问题,或者出现一些奇怪的现象。 2.解决 export ROS_LOCALHOST_ONLY1 在终端加上这句话,或者在~/.bashrc中添加,通过source ~/.bashrc使其生…...

MySQL程序
目录 MySQL程序 常用的MySQL的程序 mysqld程序 mysql客户端 客户端命令的常用的选项 配置文件 配置文件语法 MySQL客户端命令 编辑 .sql 文件中执行SQL语句 mysqlcheck (表维护程序) Mysqldump(数据库备份程序) mysql…...

吉林省自闭症寄宿学校:提供个性化培养方案
在吉林省的怀抱中,隐藏着一片温馨而特殊的天地——星贝育园自闭症儿童寄宿制学校。这里,不是简单的教育场所,而是无数自闭症儿童梦想启航的港湾,是他们感受爱、学习成长、绽放自我光芒的温馨家园。 自闭症,一个逐渐被…...

Java基础 — Java 虚拟机(上篇)
该文章属于Java进阶部分的JVM入门,本章讲述了JVM的历史、Java源代码到机器码的过程以及 Class字节码文件的内部结构等。 了解了这篇文章,能让你深入地了解JVM知识,保证在短时间内掌握JVM! JVM 入门教程(上篇࿰…...

C++ | Leetcode C++题解之第435题无重叠区间
题目: 题解: class Solution { public:int eraseOverlapIntervals(vector<vector<int>>& intervals) {if (intervals.empty()) {return 0;}sort(intervals.begin(), intervals.end(), [](const auto& u, const auto& v) {retur…...

AI编辑器CURSOR_CURSOR安装教程_使用AI进行编码的最佳方式。
一、CUROR简介 作为一个在代码海洋里遨游多年的老程序员,我得说,遇到CURSOR这位AI编辑器,就像是编程路上偶遇了一位智慧而又贴心的老友。 想象一下,夜深人静,你正埋头于那些错综复杂的逻辑和无尽的bug之中࿰…...

华为HarmonyOS灵活高效的消息推送服务(Push Kit) -- 10 推送实况窗消息
场景介绍 实况窗是一种帮助用户聚焦正在进行的任务,方便快速查看和即时处理的通知形态。有关实况窗简介、权限申请、开放场景、设计规范等说明,请参见Live View Kit简介。 通过Push Kit发送的实况窗消息支持三种操作类型,分别是: 实况窗消息操作类型 支持操作的场景类型 …...

探索 Go 语言程序实体:揭开神秘面纱
《探索 Go 语言程序实体:揭开神秘面纱》 在 Go 语言的世界里,程序实体是构建强大应用的基石。它们就像是魔法世界中的元素,各自有着独特的能力和用途。让我们一起深入探索 Go 语言程序实体的那些事儿。 一、什么是 Go 语言程序实体? 在 Go 语言中,程序实体是指可以被命…...