当前位置: 首页 > news >正文

Linux基础命令大全(详解版)

Linux基础命令(详解版)

文章目录

  • Linux基础命令(详解版)
    • 1.Linux的目录结构
    • **2.Linux路径的描述方式**
    • 3.Linux命令基础格式
    • 4.ls命令
  • 隐藏文件、文件夹
    • 5.pwd命令
    • 6.cd命令
  • 特殊路径符
    • 7.mkdir命令
  • 文件操作命令
    • 8.touch命令
    • 9.cat命令
    • 10.more命令
    • 11.cp命令
    • 12.mv命令
    • 13.rm命令
  • 通配符
  • 查找命令
    • 14.which命令
    • 15.find命令
    • 16.grep命令
    • 17.wc命令
  • 管道符|
    • 18.echo命令
    • 19.`反引号
    • 20.tail命令
    • 21.head命令
  • 重定向符
  • 拓展:命令的选项
    • 查看命令的帮助help
    • 查看命令的详细手册man

1.Linux的目录结构

Linux的目录结构是一个树型结构

Windows 系统可以拥有多个盘符, 如 C盘、D盘、E盘

Linux没有盘符这个概念, 只有一个根目录 /, 所有文件都在它下面

image-20221027214128453

  • /,根目录是最顶级的目录了
  • Linux只有一个顶级目录:/
  • 路径描述的层次关系同样适用/来表示
  • /home/test/a.txt,表示根目录下的home文件夹内有test文件夹,内有a.txt

HOME目录

每一个用户在Linux系统中都有自己的专属工作目录,称之为HOME目录。

  • 普通用户的HOME目录,默认在:/home/用户名

  • root用户的HOME目录,在:/root

FinalShell登陆终端后,默认的工作目录就是用户的HOME目录

2.Linux路径的描述方式

注意Linux与Windows的层级关系正好相反

相对路径、绝对路径

  • 相对路径,/开头的称之为相对路径

    相对路径表示以当前目录作为起点,去描述路径,如test/a.txt,表示当前工作目录内的test文件夹内的a.txt文件

  • 绝对路径,/开头的称之为绝对路径

    绝对路径从开始描述路径

在Linux系统中,路径之间的层级关系,使用:/ 来表示

/usr/local/hello.txt

  • 开头的/表示根目录
  • 后面的/表示层级关系

在这里插入图片描述

在Windows系统中,路径之间的层级关系,使用: \ 来表示

D:\data\work\hello.txt

  • D:表示D盘
  • \表示层级关系

在这里插入图片描述

3.Linux命令基础格式

无论是什么命令,用于什么用途,在Linux中,命令有其通用的格式:

command [-options] [parameter]

  • command: 命令本身
  • -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
  • parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等

4.ls命令

功能:列出文件夹信息

语法:ls [-l -h -a] [路径参数]

  • 参数:列出指定路径的内容,不提供参数,表示查看当前工作目录
  • -l,以列表(竖向排列)的形式展示内容,并展示更多信息

在这里插入图片描述

  • -h,必须要搭配 -l 一起使用,以更加人性化的方式显示文件大小

在这里插入图片描述

  • -a,表示:all的意思,即列出全部文件(包含隐藏的文件/文件夹)

图中以.开头的,表示是Linux系统的隐藏文件/文件夹(只要以.开头,就能自动隐藏)

在这里插入图片描述

当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容
在这里插入图片描述

隐藏文件、文件夹

在Linux中以.开头的,均是隐藏的。

默认不显示出来,需要-a选项才可查看到。

5.pwd命令

Print Work Directory

功能:展示当前工作目录

语法:pwd

6.cd命令

Change Directory

功能:切换工作目录

语法:cd [目标目录]

参数:

  • 目标目录,要切换去的地方,
  • 不提供默认切换到当前登录用户HOME目录
  • cd.. 返回上一级目录

特殊路径符

  • .,表示当前,比如./a.txt,表示当前文件夹内的a.txt文件
  • ..,表示上级目录,比如../表示上级目录,../../表示上级的上级目录
  • ~,表示用户的HOME目录,比如cd ~,即可切回用户HOME目录

7.mkdir命令

Make Directory

功能:创建文件夹

语法:mkdir [-p] 参数

  • 参数:必填,表示Linux路径,即要创建的文件夹的路径,相对路径或绝对路径均可
  • 选项:-p,可选,表示创建前置路径

可以通过-p选项,将一整个链条都创建完成。

在这里插入图片描述

注意:创建文件夹需要修改权限,请确保操作均在HOME目录内,不要在HOME外操作涉及到权限问题,HOME外无法成功后续我们会讲解权限管控的知识

文件操作命令

8.touch命令

功能:创建文件

语法:touch 参数

  • 参数:被创建的文件路径,相对、绝对、特殊路径符均可以使用

9.cat命令

功能:查看文件内容

语法:cat 参数

  • 参数:被查看的文件路径

10.more命令

功能:查看文件,可以支持翻页查看

语法:more 参数

  • 参数:被查看的文件路径
  • 在查看过程中:
    • 空格键翻页
    • q退出查看
  • cat是直接将内容全部显示出来
  • more支持翻页,如果文件内容过多,可以一页页的展示

11.cp命令

copy

功能:复制文件、文件夹

语法:cp [-r] 参数1 参数2

  • 参数1,被复制的
  • 参数2,要复制去的地方
  • 选项:-r,可选,复制文件夹使用

示例:

  • cp a.txt b.txt,复制当前目录下a.txt为b.txt
  • cp a.txt test/,复制当前目录a.txt到test文件夹内
  • cp -r test test2,复制文件夹test到当前文件夹内为test2存在

在这里插入图片描述

12.mv命令

move

功能:移动文件、文件夹

语法:mv 参数1 参数2

  • 参数1:被移动的
  • 参数2:要移动去的地方,参数2如果不存在,则会进行改名

在这里插入图片描述

13.rm命令

remove

功能:删除文件、文件夹

语法:rm [-r -f] 参数...参数

  • 参数:支持多个,每一个表示被删除的,空格进行分隔
  • 选项:-r,删除文件夹使用

在这里插入图片描述

  • 选项:-f,强制删除(不会给出确认提示),一般root用户会用到
  • 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
  • 所以一般普通用户用不到-f选项

rm命令很危险,一定要注意,特别是切换到root用户的时候。

在这里插入图片描述

通配符

符号* 表示通配符,即匹配任意内容(包含空)

  1. test ,表示匹配任何以test开头的内容
  2. *test,表示匹配任何以test结尾的内容
  3. *test *,表示匹配任何包含test的内容

删除所有以test开头的文件或文件夹

在这里插入图片描述

如下命令,请千万千万不要在root管理员用户下执行:rm -rf / rm -rf /*效果等同于在Windows上执行C盘格式化。


查找命令

14.which命令

Linux命令,其实它们的本体就是一个个的二进制可执行程序。和Windows系统中的.exe文件,是一个意思。

功能:查看命令的程序本体文件路径

语法:which 被查看的命令

在这里插入图片描述

15.find命令

在这里插入图片描述

功能:搜索文件

语法1按文件名搜索:find 路径 -name 参数

  • 路径,搜索的起始路径
  • 参数,搜索的关键字,支持通配符*, 比如:*test表示搜索任意以test结尾的文件

为了确保后续演示,拥有最大的权限,可以在整个系统完成搜索我们可以切换到root用户以获得管理员权限执行命令:su - root

在这里插入图片描述

拓展

语法:find 起始路径 -size +(-) -n [KMG]

  • +、- 表示大于和小于
  • n表示大小数字
  • kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB

示例:

  • 查找小于10KB的文件: find / -size -10k
  • 查找大于100MB的文件:find / -size +100M
  • 查找大于1GB的文件:find / -size +1G

16.grep命令

功能:过滤关键字

语法:grep [-n] 关键字 文件路径

  • 选项-n,可选,表示在结果中显示匹配的行的行号。
  • 参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用” ”将关键字包围起来
  • 参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

参数文件路径,可以作为管道符的输入

  1. 过滤itcast关键字

在这里插入图片描述

  1. 过滤code关键字,并显示行号

在这里插入图片描述

17.wc命令

功能:统计

语法:wc [-c -m -l -w] 文件路径

  • 选项,-c,统计bytes数量
  • 选项,-m,统计字符数量
  • 选项,-l,统计行数
  • 选项,-w,统计单词数量
  • 参数,文件路径,被统计的文件,可作为内容输入端口

参数文件路径,可作为管道符的输入

1.不带选项,统计文件

在这里插入图片描述

2.统计字节数

在这里插入图片描述

3.统计字符数

在这里插入图片描述

4.统计行数

在这里插入图片描述

5.统计单词数

在这里插入图片描述

管道符|

写法:|

功能:将符号左边的结果,作为符号右边的输入

示例:

cat a.txt | grep itheima,将cat a.txt的结果,作为grep命令的输入,用来过滤itheima关键字

在这里插入图片描述

可以支持嵌套:

cat a.txt | grep itheima | grep itcast

  • ls | grep Desktop,过滤ls的结果

在这里插入图片描述

  • find / -name “test” | grep “/usr/lib64”,过滤结果,只找路径带有/usr/lib64的结果

在这里插入图片描述

18.echo命令

功能:使用echo命令在命令行内输出指定内容

语法:echo 参数

  • 参数:被输出的内容
  1. 在终端上显示:Hello Linux

在这里插入图片描述

带有空格或\等特殊符号,建议使用双引号包围因为不包围的话,空格后很容易被识别为参数2,

尽管echo不受影响,但是要养成习惯哦

echo “Hello Linux”

19.`反引号

功能:被两个反引号包围的内容,会作为命令执行

本意是想,输出当前的工作路径,但是pwd被作为普通字符输出了。

在这里插入图片描述

示例:

  • echo `pwd`,会输出当前工作目录

20.tail命令

功能:查看文件尾部内容

语法:tail [-f] 参数

  • 参数:被查看的文件
  • 选项:-f,持续跟踪文件修改

21.head命令

功能:查看文件头部内容

语法:head [-n] 参数

  • 参数:被查看的文件
  • 选项:-n,查看的行数

重定向符

功能:将符号左边的结果,输出到右边指定的文件中去

  • >,表示覆盖输出
  • >>,表示追加输出

演示

  • echo “Hello Linux” > itheima.txt

在这里插入图片描述

  • echo “Hello itheima” > itheima.txt,再次执行,覆盖新内容

在这里插入图片描述

  • echo “Hello itcast” >> itheima.txt,再次执行,使用>>追加新内容

在这里插入图片描述

拓展:命令的选项

我们学习的一系列Linux命令,它们所拥有的选项都是非常多的。

比如,简单的ls命令就有:-a -A -b -c -C -d -D -f -F -g -G -h -H -i -I -k -l -L -m -n -N -o -p -q -Q -r-R -s -S -t -T -u -U -v -w -x -X -1等选项,可以发现选项是极其多的。

课程中, 并不会将全部的选项都进行讲解,否则,一个ls命令就可能讲解2小时之久。

课程中,会对常见的选项进行讲解, 足够满足绝大多数的学习、工作场景。

查看命令的帮助help

可以通过:命令 --help查看命令的帮助手册

image-20221027220005610

查看命令的详细手册man

可以通过:man 命令查看某命令的详细手册

image-20221027220009949

相关文章:

Linux基础命令大全(详解版)

Linux基础命令(详解版) 文章目录 Linux基础命令(详解版)1.Linux的目录结构**2.Linux路径的描述方式**3.Linux命令基础格式4.ls命令 隐藏文件、文件夹5.pwd命令6.cd命令 特殊路径符7.mkdir命令 文件操作命令8.touch命令9.cat命令10…...

python列表常见去重方法

列表去重在python实际运用中,十分常见,也是最基础的重点知识。 1. 使用for循环实现列表去重 此方法去重后,原顺序保持不变。 # for循环实现列表去重 list1 [a, 4, 6, 4, b, hello, hello, world, 9, 9, 4, a] list2 [] for l1 in list1:…...

usb摄像头应用编程

作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习 擅长领域:驱动开发,嵌入式软件开发,BSP开发 作者主页:一个平凡而乐于分享的小比特的个人主页…...

康谋分享 | 自动驾驶联合仿真——功能模型接口FMI(一)

功能模型接口FMI(Functional Mock-up Interface)是一个开放且与工具解耦的标准。FMI包含了一个C-API(接口),一个用于描述接口的XML文件以及可交换的功能模型单元FMU(Functional Mock-up Unit)&a…...

OPenCV中绘制多条多边形曲线函数polylines的使用

操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:Visual Studio Code编程语言:C11 功能描述 绘制多条多边形曲线 原型1 void cv::polylines ( InputOutputArray img, InputArrayOfArrays pts, bool isClosed, const Scalar & color…...

气膜球幕影院:娱乐体验的新高度—轻空间

气膜球幕影院以其独特的全景沉浸体验和丰富的娱乐内容,成为了现代娱乐产业的重要组成部分。轻空间带您来探索一下气膜球幕影院带来的独特娱乐体验。 全景沉浸式体验 气膜球幕影院的360度全景沉浸式体验,彻底改变了传统观影方式。观众被包围在一个球形屏幕…...

阿里CEO个人投资的智驾公司,走了不一样的路

佑驾创新在去年8月和11月完成两轮融资,在今年5月底递表港交所,目前拿到了29家车企88款车型的量产订单。自动驾驶赛道不缺明星,这些因素本不足以凸显它的差异化。但是在招股书中,一条特殊的发展路线,却让佑驾创新显得不…...

Arduino平台软硬件原理及使用——无源蜂鸣器模块的使用

文章目录 一、蜂鸣器发声原理 二、无源蜂鸣器与有源蜂鸣器的区分 三、无源蜂鸣器模块在Arduino中的使用 一、蜂鸣器发声原理 上图为常见的不同封装及规格的蜂鸣器。 同蜜蜂、知了等昆虫发声原理一样,蜂鸣器同样靠振动来发出声音; 如上图为无源蜂鸣器的内…...

【Go】用 DBeaver、db browser 和 SqlCipher 读取 SqlCipher 数据库

本文档主要描述如何用 DBeaver、db browser 和 SqlCipher 上打开加密的 SQLite3 数据库(用 SqlCipher v3 加密) 软件版本 DBeaver:v24.1.0 SQLite-driver: sqlite-jdbc-3.46.0.0.jar dbbrowser-for-sqlite-cipher:3.12.2 SqlCipher cli(ubuntun)&am…...

ROS操作过程中的报错

文章目录 错误:E: Unable to locate package ros-noetic-desktop-full报错问题报错原因解决方法 错误2:ERROR: cannot download default source list from:报错问题错误原因解决办法 错误:E: Unable to locate package ros-noetic-desktop-fu…...

Qt项目学习-20240617

Qt项目学习 1.0 文件构建 1.1 预处理命令 C预处理命令是编译过程中的第一步,发生在编译器进行实际编译之前。预处理器(preprocessor)执行这些命令,它们不是C语言的一部分,但对源代码的编译过程至关重要。以下是一些常…...

加密好的WPSword文档,忘记密码怎么办?

在日常办公和学习中,我们经常使用WPS Word等文档处理软件来创建和编辑重要文件。为了保护这些文件不被未经授权的人访问,我们通常会选择给文档设置密码。然而,有时我们可能会因为时间久远或其他原因而忘记自己设置的密码,这时该如…...

C# WPF 读写CAN数据

C# WPF 读写CAN数据 CAN 分析仪 分析仪资料下载 官方地址:https://www.zhcxgd.com/1.html CSDN: 项目配置 复制Dll库文件 文件在上面的资料里面 设置不安全代码 CAN C#工具类 CAN_Tool.cs using Microsoft.VisualBasic; using System; using Sys…...

力扣2517.礼盒的最大甜蜜度

力扣2517.礼盒的最大甜蜜度 二分答案求最小值 排完序判断是否有k个差距至少为mid的元素别用i遍历 可能会越界 用 : 有多少取多少 class Solution {public:int maximumTastiness(vector<int>& price, int k) {ranges::sort(price);auto check [&](int mid) -&…...

多模块存储器

随着计算机技术的发展&#xff0c;处理的信息量越来越多&#xff0c;对存储器的速度和容量要求也越来越高&#xff1b;而且随着CPU性能的不断提高、IO设备数量不断增加&#xff0c;导致主存的存取速度已经称为了整个计算机系统的性能瓶颈。这就要求我们必须提高主存的访问速度。…...

Windows反截屏开发实现

文章目录 Windows反截屏开发实现1. SetWindowDisplayAffinity2. 反截屏系统3. 总结 Windows反截屏开发实现 最近在我们云桌面中需要做到反截屏能力&#xff0c;所谓反截屏就是我们无法通过截图软件&#xff08;微信&#xff0c;QQ&#xff0c;截图等程序&#xff09;截取桌面的…...

Android.mk的用法

前言 Android.mk 文件是 Android 编译系统中用于描述项目源文件、库和模块的 Makefile。它采用 GNU Make 的语法,但也包含了一些特定于 Android 编译系统的规则和变量。以下是对其语法和使用方法的详细解释及示例。 一:模块种类 一个Android.mk file用来向编译系统描述你的源…...

android studio CreateProcess error=2, 系统找不到指定的文件

【问题记录篇】 在AndroidStudio编译开发jni相关工程代码的时候&#xff0c;编译遇到的这个报错&#xff1a; CreateProcess error2, 系统找不到指定的文件。排查处理步骤: 先查看Build Output的具体日志输出 2.了解到问题出在了NDK配置上&#xff0c;此时需要根据自己的gra…...

jQuery如何把单选框设置为选中状态

在网页开发中&#xff0c;我们经常需要使用表单元素来收集用户数据。其中&#xff0c;单选框&#xff08;radio button&#xff09;是一种常见的表单元素&#xff0c;用于从一组选项中选择一个。使用jQuery&#xff0c;我们可以轻松地控制这些单选框的状态&#xff0c;包括将它…...

Mware Fusion Pro 13 mac版:一键掌控虚拟世界

VMware Fusion Pro 13是一款功能卓越的虚拟化软件&#xff0c;专为Mac操作系统量身打造。这款软件为用户提供了一个一站式的虚拟化解决方案&#xff0c;能够满足各种多样化的需求。 VMware Fusion Pro 13 Mac获取 VMware Fusion Pro 13的强大之处在于其采用了最 先进的虚拟化…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

五年级数学知识边界总结思考-下册

目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解&#xff1a;由来、作用与意义**一、知识点核心内容****二、知识点的由来&#xff1a;从生活实践到数学抽象****三、知识的作用&#xff1a;解决实际问题的工具****四、学习的意义&#xff1a;培养核心素养…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI

前一阵子在百度 AI 开发者大会上&#xff0c;看到基于小智 AI DIY 玩具的演示&#xff0c;感觉有点意思&#xff0c;想着自己也来试试。 如果只是想烧录现成的固件&#xff0c;乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外&#xff0c;还提供了基于网页版的 ESP LA…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

书籍“之“字形打印矩阵(8)0609

题目 给定一个矩阵matrix&#xff0c;按照"之"字形的方式打印这个矩阵&#xff0c;例如&#xff1a; 1 2 3 4 5 6 7 8 9 10 11 12 ”之“字形打印的结果为&#xff1a;1&#xff0c;…...

Spring AOP代理对象生成原理

代理对象生成的关键类是【AnnotationAwareAspectJAutoProxyCreator】&#xff0c;这个类继承了【BeanPostProcessor】是一个后置处理器 在bean对象生命周期中初始化时执行【org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization】方法时…...