【Linux我做主】基础命令完全指南上篇
Linux基础命令完全指南【上篇】
- Linux基础命令完全指南
- github地址
- 前言
- 命令行操作的引入
- Linux文件系统
- 树形结构的根文件系统
- 绝对路径和相对路径
- 适用场景
- Linux目录下的隐藏文件
- 基本指令
- 目录和文件相关
- 1. ls
- 2. cd和pwd
- cd
- pwd
- 3. touch
- 4. mkdir
- 5. cp
- 6. mv
- 移动目录时覆盖写入的两种特殊情况
- 7. alias
- 文件查看相关
- 1. cat
- 2. more
- 3. less
- 4. head
- 5. tail
- 总结核心概念
Linux基础命令完全指南
github地址
有梦想的电信狗
前言
本文介绍Linux系统的基本知识和一些常见命令的基本使用,命令的更多用法需结合man手册进行查询。命令和命令的细节较多,因此文章分为上篇和下篇。本文是文章的上篇。
命令行操作的引入
在
Windows系统中,用户通常依赖图形界面(GUI)进行文件管理和操作,例如通过鼠标点击资源管理器完成复制、删除等任务;
而Linux系统虽然也提供GUI工具,但其核心优势在于命令行(CLI)。通过终端输入简洁的命令,用户可直接操控系统内核,实现更高效、灵活的操作,例如批量处理文件、远程管理服务器等场景。
命令行不仅节省资源,还能通过脚本自动化复杂任务,是开发者及运维人员的核心工具,体现了
Linux“一切皆文件”的设计哲学。
- 因此学习Linux下命令行的使用很有必要。
- Linux操作系统极其稳定,最常用于做服务器操作系统,因此最好永不关机。
Linux文件系统
首先声明一个概念,
Linux下一切皆文件。能被看到的都是文件,既包括最常见的文本文件,甚至鼠标,键盘,显示器等设备都是文件。随着后面学习的深入,会对这一概念有更深入的理解。
树形结构的根文件系统
Linux的目录结构整体上是一个多叉树,他的叶子结点,一定是空目录或者文件,路上结点一定是一个非空目录。
因此,我们所有的对文件或者目录的增删查改,本质都是对这颗多叉树的增删查改。

与大多数操作系统一致,Linux系统的文件系统结构是树形结构的。且各个目录都有各自的功能。
/:是Linux的根目录。bin:存放二进制可执行文件,以命令居多boot:存放开机启动程序dev:存放设备文件: 包括字符设备文件、块设备文件home:存放 普通用户 的目录etc:用户信息和系统配置文件 passwd、grouplib:操作系统使用的库文件:例如 libc.so.6是一个动态库root:管理员宿主目录(家目录)usr:用户资源管理目录 unix software resource 用户的一些文件 第三方应用的资源文件opt和proc: 与Linux 进程相关的文件
Linux的一个目录中,既可以存放目录文件,也可以存放其他文件。
绝对路径和相对路径
我们在磁盘中定位一个文件,通常需要路径来描述。
路径定位需要有唯一性。
绝对路径:从/开始定位到指定位置,具有唯一性的路径,称为绝对路径。相对路径:以当前所处路径为起始参考位置,来进行定位的路径,成为相对路径。
- 绝对路径以根目录
/为起点。 - 相对路径以当前路径为起点。
适用场景
绝对路径:绝对路径以根目录/为起点,一般比较长,但具有不变性。一般用在一些固定常见,配置文件中使用。相对路径:以当前路径为起点,一般比较短小,命令行输入中常使用相对路径。
使用绝对路径进入目录dir1

使用相对路径进入目录dir1
Linux目录下的隐藏文件
Linux中的每一个目录下都有两个隐藏文件.和..。可以通过ls -a来查看
-l是让文件以列表的形式来进行呈现。

Linux中的每一个目录下都有两个隐藏文件.和..。这两个文件有什么用呢?
在
Linux中,以.开头的文件都是隐藏文件,只有在ls -a是才能被看到。
-
.:表示当前路径。 -
..:表示当前路径的上级路径。 -
.存在的意义:帮助用户定位当前目录下的一个文件。如: ./a,out -
..存在的意义:帮助用户定位到当前路径的上级路径以及上级路径中的文件。
基本指令
目录和文件相关
1. ls
功能:列出目录内容
语法:ls [选项] [目录]
常用参数:
-l:长格式显示(包含权限、所有者、大小等信息)-a:列出目录下的所有文件,包括以 . 开头的隐含文件。-h:以人类可读格式显示文件大小,更人性化-t:按修改时间排序-R:递归列出子目录内容-d: 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录-i: 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件-k: 以 k 字节的形式表示文件的大小。ls –alk 指定文件-n: 用数字的 UID,GID 代替名称。-F: 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别)-r: 对目录反向排序。-t:以时间排序。-s: 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)-1: 一行只输出一个文件。

2. cd和pwd
cd
语法:cd 路径。
路径可以是相对路径,也可以是绝对路径。
功能:改变工作目录。将当前工作目录改变到指定的目录下。
# 直接输入cd,默认切换到当前用户的home目录
# 对于root用户 则切换到 /root 目录下
cd
#返回上级目录
cd ..
# 使用绝对路径
cd /home/changan_memroy/linux/
# 使用相对路径
cd ../day02/
# 进入用户home目录
cd ~
cd /home # 与上一行的写法等价
# 返回最近访问目录
cd -
~该符号表示当前用户的home目录。-该符号表示用户最近进入的一个目录。.表示当前目录。
pwd
语法: pwd
功能:显示用户当前所在的目录
常用选项:无
cd配合-和~方便地切换目录。- 切换完目录后使用
pwd验证当前所在目录。

3. touch
语法:touch [选项]… 文件…
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项:
-a或--time=atime或--time=access或--time=use只更改存取时间。
-c或--no-create不建立任何文档。-d: 使用指定的日期时间,而非现在的时间。-f: 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。-m: 或--time=mtime或--time=modify只更改变动时间。-r: 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。-t: 使用指定的日期时间,而非现在的时间
加上不同的参数,就有不同的用法,但最常用的用法是使用
touch来创建文件。例如创建.c或.cpp源程序文件或者普通文件,创建别的文件也是如此。
4. mkdir
语法:mkdir [选项] 路径名称
功能:在当前目录下创建一个名为 dirname 的目录
常用选项:
-p或--parents 后面跟一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。(递归创建子目录)
演示如下

5. cp
语法:cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
说明: cp指令用于复制文件或目录。如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
常用选项:
-f或--force: 强行复制文件或目录, 不论目的文件或目录是否已经存在-i或--interactive:拷贝时,若目标目录下有同名文件,覆盖文件之前会先询问用户是否覆盖-r: 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理-R或--recursive:递归处理,将指定目录下的文件及子目录一并处理
最常用的选项是
-f和-r
目标目录
d1中没有同名文件,因此不需要加-f

6. mv
mv命令是move的缩写,可以用来
移动文件或者将文件重命名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。
语法:mv [选项] 源文件或目录 目标文件或目录
功能: 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
- 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
- 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
常用选项:
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖

移动目录时覆盖写入的两种特殊情况
- 目标路径下有同名目录,同名目录不为空时,无法覆盖。

- 目标路径下有同名目录,为空目录,直接覆盖。

7. alias
之前对于
ls命令,我们是否会有疑问?为什么ll等价于ls -l。
这里本质上是命令alias在起作用。
语法:alias [选项][名称[='命令']]
功能:创建或显示命令别名,用于简化复杂的命令。
常用选项:
• -p:以可被 Shell 重新使用的格式输出别名(便于保存到配置文件中)。
功能详解:
-
定义别名:通过
名称='命令'的格式将长命令或常用命令定义为简短的别名。
• 示例:alias ll='ls -l'(输入ll即可执行ls -l)。
• 若命令包含空格或特殊字符,需用引号包裹。 -
查看别名:
• 直接输入alias(不加参数)可列出所有已定义的别名。
• 输入alias 名称可查看特定别名的定义(如alias ll)。 -
永久生效:
• 在~/.bashrc或~/.zshrc中写入别名定义,重启终端或执行source ~/.bashrc后生效。
注意事项:
• 使用 unalias 名称 可删除临时别名。
• 若别名与系统命令同名,优先执行别名(用 \命令 或 command 命令 可绕过别名)。
文件查看相关
1. cat
语法:cat [选项][文件]
功能: 查看目标文件的内容, 常用于行数短小的文件的查看。
常用选项:
-b:对非空行输出编号-n: 对输出的所有行编号-s:不输出多行空行
2. more
cat会查看整个文件的内容,直接定位到文件的末尾,当遇到大文件时,直接定位到文件的末尾,会导致我们不便查看到文件前面的内容。而more指令可以让我们从文件第的一行开始,通过Enter来进行向后滚动,逐行依次查看内容。但
more的缺点是只能从文件开头向后进行翻页,无法向前进行查看。
语法:more [选项][文件]
功能:more命令,功能类似 cat
常用选项:
-n:对输出的所有行编号q: 退出more
3. less
语法: less [参数] 文件
功能:
-
less工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。 -
less的用法比起more更加的有弹性。在more的时候,我们并没有办法向前面翻, 只能往后面看 -
但若使用了
less时,就可以使用[pageup][pagedown]等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容! -
除此之外,在
less内可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜索。而且less在查看之前不会加载整个文件
选项:以下选项适用于通过less进入文件后在文件内进行搜索,而不是在使用less打开文件时进行搜索。
-i忽略搜索时的大小写-N显示每行的行号/字符串:向下搜索“字符串”的功能?字符串:向上搜索“字符串”的功能n:重复前一个搜索(与 / 或 ? 有关)N:反向重复前一个搜索(与 / 或 ? 有关)q:quit

所有选项是在:处进行输入的。例如向下查找字符串hello,输入/hello。
其他命令也都是在使用less打开文件后再进行输入的。
因此查看文件使用
less和cat,以及通过==管道(下篇介绍)==配合head和tail比较多
4. head
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 就是看档案的结尾。
语法: head [参数]... [文件]...
功能:
head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
选项:
-n [行数]:显示文件的前n行

5. tail
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.
语法: tail [必要参数] [选择参数] [文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。tail默认显示文件的后10行。
选项:
-f循环读取-n 行数: 显示行数

总结核心概念
- "一切皆文件"设计理念贯穿系统设计
- 命令行操作相比GUI更高效,适合批量处理与自动化
- 掌握路径定位与基础命令组合使用是Linux操作的关键基础
这些命令构成了Linux系统操作的基石,熟练使用将显著提升工作效率。下篇将讲解查找、压缩解压等进阶命令。
以上就是本文的所有内容了,如果觉得文章写的不错,还请留下免费的赞和收藏,也欢迎各位大佬在评论区交流
分享到此结束啦
一键三连,好运连连!
相关文章:
【Linux我做主】基础命令完全指南上篇
Linux基础命令完全指南【上篇】 Linux基础命令完全指南github地址前言命令行操作的引入Linux文件系统树形结构的根文件系统绝对路径和相对路径适用场景Linux目录下的隐藏文件 基本指令目录和文件相关1. ls2. cd和pwdcdpwd 3. touch4. mkdir5. cp6. mv移动目录时覆盖写入的两种特…...
Designing Dashboards with SAP Analytics Cloud
Designing Dashboards with SAP Analytics Cloud...
项目实战系列:基于瑞萨RA6M5构建多节点OTA升级-系统设计<一>
项目背景 原嵌入式控制系统采用分布式模块化架构,由12个功能板卡(通信控制、信号采集、驱动执行等)组成。系统维护阶段存在以下痛点: 低效的本地烧录机制:各板卡固件升级需通过JTAG接口逐一手动连接JLINK仿真器&#x…...
hadoop集群配置-scp拓展使用
进行文件的拷贝:...
《AI大模型趣味实战》 No3:快速搭建一个漂亮的AI家庭网站-相册/时间线/日历/多用户/个性化配色/博客/聊天室/AI管家(下)
《AI大模型趣味实战》 No3:快速搭建一个漂亮的AI家庭网站-相册/时间线/日历/多用户/个性化配色/博客/聊天室/AI管家(下) 摘要 本文介绍了家庭网站V1.3版本的更新内容,主要聚焦于AI管家功能的优化与完善。V1.3版本对AI管家模块进行了全面升级࿰…...
华为OD机试 - 创建二叉树(Java 2024 E卷 200分)
题目描述 给定一系列树状结构操作的问题,通过 Q 次查询还原树结构并输出结果。题目要求实现一个类 Solution,其方法 recoverTree 需要根据输入的操作数组 operations 还原树的结构,并返回树的根节点。每个操作 operations[i] [height, inde…...
c++基础知识-图论进阶
一、拓扑排序 1、基础知识 1)什么是拓扑排序 对一个有向无环图G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若,则u在线性序列中出现在v之前。 2)拓扑排序的操作方法 重复执行…...
[Java实战]Spring Boot服务CPU 100%问题排查:从定位到解决
Spring Boot服务CPU 100%问题排查:从定位到解决 1. 引言 当Spring Boot服务出现CPU占用率100%时,系统性能会急剧下降,甚至导致服务不可用。本文将通过真实代码案例,详细讲解如何快速定位问题根源,并提供解决方案。无…...
1.6 极限存在准则
1.夹逼定理(迫敛定理) 1.1 数列型 1.1.1 准则 1.2 函数型 2. 两个重要极限...
Fisher信息、梯度方差与学习率调度器的计算流程
Fisher信息、梯度方差与学习率调度器的计算流程 目录 Fisher信息、梯度方差与学习率调度器的计算流程**步骤1:定义模型与数据集****步骤2:计算梯度与Fisher信息****步骤3:计算梯度方差****步骤4:定义学习率调度器****步骤5:参数更新流程****示例输出****关键概念说明**步骤…...
Model Context Protocol 的生命周期
生命周期阶段 生命周期分为三个主要阶段: 初始化阶段 (Initialization) 客户端与服务器建立协议版本兼容性。交换并协商能力。分享实现细节。客户端必须发送 initialize 请求,包含支持的协议版本、客户端能力和客户端实现信息。服务器必须响应其自身能力…...
Go语言中的错误处理与异常恢复:性能对比与实践思考
Gone是一款轻量级Go依赖注入框架,通过简洁的标签声明实现自动组件管理。它提供零侵入设计、完整生命周期控制和极低运行时开销,让开发者专注于业务逻辑而非依赖关系处理。 项目地址: https://github.com/gone-io/gone 文章目录 Go的错误处理哲…...
CSS 属性选择器详解
CSS 属性选择器详解 引言 CSS(层叠样式表)是网页设计中的重要组成部分,它用于控制网页元素的样式和布局。属性选择器是CSS选择器的一种,它允许开发者根据元素的特定属性来选择和样式化元素。本文将详细讲解CSS属性选择器的概念、语法以及常用属性选择器的使用方法。 一、…...
大华SDK协议在智联视频超融合平台中的接入方法
一. 大华SDK协议详解 (一)、大华SDK协议概述 大华SDK(Software Development Kit)协议是大华股份为开发者提供的一套软件开发工具包,旨在帮助开发者快速集成大华设备(如摄像头、NVR、DVR等)的功…...
卓越的用户体验需要智能内容
摘要:这篇文章指出静态文档已无法满足现代用户的需求,而智能内容则是构建卓越用户体验的关键。文章从智能内容的定义、优势和实际应用等方面进行了详细阐述,并强调了企业应积极拥抱智能内容,以提升客户满意度、降低成本并创造新的…...
【蓝桥杯】1124修建公路1(Kruskal算法)
思路 找到能够连通所有城市的最小树即可,可用Prim或Kruscal。 !!注意,m的范围是包括0的,可就是包含没有道路的情况,要单独输出0 code import os import sys# 输入 n,m map(int,input().split()) road …...
传感云揭秘:边缘计算的革新力量
在当今快速发展的科技时代,传感云和边缘计算系统正逐渐成为人们关注的焦点。传感云作为物联网与云计算的结合体,通过虚拟化技术将物理节点转化为多个服务节点,为用户提供高效、便捷的服务。而边缘计算则是一种靠近数据源头或物端的网络边缘侧…...
Bigemap Pro 的三种地图下载方式
地图下载通常是是最基础但也最重要的任务之一,无论是进行空间分析、制作专题地图,还是进行数据可视化,高质量的地图数据都是不可或缺的。Bigemap Pro提供了三种地图下载方式,分别适用于不同的场景和需求。无论是免费版用户还是专业…...
Python直方图:从核密度估计到高维空间解析
一、直方图的核心原理与数学本质 数据分布的视觉解码器 直方图(Histogram)是数据科学家的"分布显微镜",通过将连续数据划分为等宽区间(Bin),统计各区间的频数/频率,用相邻矩形条直观…...
0基础 | 恒流源专题
目录 tip1:低端反馈编辑 tip2: 恒流源电路的设计注意事项 tip3:三极管输出恒定电流受运放输出电流控制 tip4:高端反馈 基本逻辑: 当负端Vref不输入电压时, 当负端Vref输入电压时 tip1:低端反馈 判…...
Cannl 数据同步-ES篇
Cannl 数据同步 目录 Cannl 数据同步一、概述1、简介2、原理3、模块 二、配置MySQL1、使用版本使用版本 2、环境要求1)操作系统2)MySQL要求 三、配置Canal-server1、下载安装2、**修改配置****单机配置****集群配置****分库分表配置** 四、配置canal-ada…...
Webpack 前端性能优化全攻略
文章目录 1. 性能优化全景图1.1 优化维度概览1.2 优化效果指标 2. 构建速度优化2.1 缓存策略2.2 并行处理2.3 减少构建范围 3. 输出质量优化3.1 代码分割3.2 Tree Shaking3.3 压缩优化 4. 运行时性能优化4.1 懒加载4.2 预加载4.3 资源优化 5. 高级优化策略5.1 持久化缓存5.2 模…...
时间序列分析的军火库:AutoTS、Darts、Kats、PaddleTS、tfts 和 FancyTS解析
引言:时间序列分析的现代挑战 时间序列分析在多个领域中扮演着关键角色,包括工程、金融、气象、工业预测等。随着开源工具的快速发展,开发者可以通过多种库快速实现时间序列预测与分析。本文将对 AutoTS、Darts、Kats、PaddleTS、tfts 和 FancyTS 六大主流库进行详细解析,…...
MySQL意向锁我该怎么理解?
在MySQL中,意向锁(Intention Lock)是一种用于协调不同粒度锁(如表锁和行锁)的机制,其核心目的是在保证数据一致性的同时提高并发性能。以下是关于意向锁的详细解析: 一、意向锁的作用 意向锁的…...
Linux 操作系统简介
Linux 操作系统 Linux 是一种自由和开源的操作系统,最初由芬兰的 Linus Torvalds 在1991年创建。它是一个类 Unix 操作系统,广泛用于服务器、个人电脑和嵌入式设备。Linux 操作系统的核心是 Linux 内核,其周围构建了各种工具和应用程序&…...
前端大文件上传(分片上传)与下载
文章目录 一、问题二、思路1、选择文件2、校验文件是否符合规范3、文件切片上传4、分片上传注意点5、大文件下载 一、问题 日常业务中难免出现前端需要向后端传输大型文件的情况,这时单次的请求不能满足传输大文件的需求,就需要用到分片上传 业务需求为…...
工业领域 - 离散工业与流程工业极简理解
离散工业 离散工业是指通过组装或加工离散的零部件来生产产品 离散工业生产的是可数的、独立的产品 离散工业的每个产品通常由多个部件组成,生产过程可以分解为多个独立的步骤 离散工业生产过程主要涉及组装和加工,组装是将多个零部件组装成最终产品&…...
一个使用Python和相关深度学习库(如`PyTorch`)实现GCN(图卷积网络)与PPO(近端策略优化)强化学习模型结合的详细代码示例
以下是一个使用Python和相关深度学习库(如PyTorch)实现GCN(图卷积网络)与PPO(近端策略优化)强化学习模型结合的详细代码示例。这个示例假设你在一个图环境中进行强化学习任务。 1. 安装必要的库 确保你已…...
【YOLOv8】YOLOv8改进系列(7)----替换主干网络之LSKNet
主页:HABUO🍁主页:HABUO 🍁YOLOv8入门改进专栏🍁 🍁如果再也不能见到你,祝你早安,午安,晚安🍁 【YOLOv8改进系列】: 【YOLOv8】YOLOv8结构解读…...
CCF CSP 第30次(2023.05)(1_仓库规划_C++)
CCF CSP 第30次(2023.05)(1_仓库规划_C) 题目描述:输入格式:输出格式:样例输入:样例输出:样例解释:子任务:解题思路:思路一࿱…...



