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

Linux命令小全

【本文章基于B站黑马程序员课程,课程链接:linux零基础快速入门到精通,个人进行自己适用的总结和归纳】

一.Linux入门

Linux组成

Linux系统主要由两部分组成:

  • Linux系统内核
  • 系统级应用程序

  • 内核提供系统最核心的功能,如:调度CPU、调度内存、调度文件系统、调度网络通讯、调度IO等。

  • 系统级应用程序,可以理解为出厂自带程序,可供用户快速上手操作系统,如:
    文件管理器、任务管理器、图片查看、音乐播放等。

  • 比如,播放音乐,无论用户使用自带音乐播放器或是自行安装的第三方播放器

  • 均是由播放器程序,调用内核提供的相关功能,由内核调度CPU解码、音响发声等。

Linux内核

Linux内核下载地址:https://www.kernel.org

内核是免费、开源的,这也就代表了:

  • 任何人都可以获得并修改内核,并且自行集成系统级程序

  • 提供了内核+系统级程序的完整封装,称之为Linux发行版

目前市面上常用的linux发行版:

本文章将会使用 CentOS 和 ubuntu

VMware安装:

第一章-05-VMware Workstation中安装CentOS7 Linux操作系统_哔哩哔哩_bilibili

远程连接Linux系统

对于操作系统的使用,有2种使用形式:

  • 图形化页面使用操作系统

  • 以命令的形式使用操作系统

不论是Windows还是Linux亦或是MacOS系统,都是支持这两种使用形式。

  • 图形化:使用操作系统提供的图形化页面,以获得图形化反馈的形式去使用操作系统。

  • 命令行:使用操作系统提供的各类命令,以获得字符反馈的形式去使用操作系统。

尽管图形化是大多数人使用计算机的第一选择,但是在Linux操作系统上,这个选择被反转了。

无论是企业开发亦或是个人开发,使用Linux操作系统,多数都是使用的:命令行。

这是因为:

  • Linux从诞生至今,在图形化页面的优化上,并未重点发力。所以Linux操作系统的图形化页面:不好用、不稳定。

  • 在开发中,使用命令行形式,效率更高,更加直观,并且资源占用低,程序运行更稳定。

FinalShell

我们使用VMware可以得到Linux虚拟机,但是在VMware中操作Linux的命令行页面不太方便,主要是:

  • 内容的复制、粘贴跨越VMware不方便

  • 文件的上传、下载跨越VMware不方便

  • 也就是和Linux系统的各类交互,跨越VMware不方便

我们可以通过第三方软件,FinalShell,远程连接到Linux操作系统之上。

并通过FinalShell去操作Linux系统。

这样各类操作都会十分的方便。

下载过程:第一章-07-远程连接Linux系统_哔哩哔哩_bilibili

FinalShell建立远程连接:

虚拟机快照

在学习阶段我们无法避免的可能损坏Linux操作系统。

如果损坏的话,重新安装一个Linux操作系统就会十分麻烦。

VMware虚拟机(Workstation和Fusion)支持为虚拟机制作快照。

通过快照将当前虚拟机的状态保存下来,在以后可以通过快照恢复虚拟机到保存的状态。

VMware中点击这里,右边有三个时钟一样的按钮,在这里可以创建快照和管理快照

二.Linux基础命令

Linux目录结构

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

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

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

Windows:

hello.txt 这个文件的路径就可以描述为 : D:\data\work\hello.txt

Linux:

hello.txt 这个文件路径就可以描述为: /user/local/hello.txt

Linux命令基础

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

command [-options] [parameter]

  • command: 命令本身

  • -options: [可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节

  • parameter: [可选,非必填]命令的参数,多数用于命令的指向目标等

语法中的[ ],表示可选的意思

示例:

ls -l /home/itheima

  • ls是命令本身,-l是选项,/home/itheima是参数

  • 意思是以列表的形式,显示/home/itheima目录内的内容

cp -r test1 test2

  • cp是命令本身,-r是选项,test1和test2是参数

  • 意思是复制文件夹test1成为test2

ls :查看目录下内容

ls命令的作用是列出目录下的内容,语法:

ls [-a -l -h] [Linux路径]

  • -a表示all,列出全部文件(包含隐藏的文件/文件夹)
  • -l表示以列表(竖向排列)的形式展示内容,并展示更多信息
  • -h表示以易于阅读的形式,列出文件大小,如 K、M、G (-h必须要搭配 -l使用)
  • Linux路径是此命令可选的参数

可选参数是可以组合使用的,比如:

  • ls -l -a
  • ls -la
  • ls -al
  • ls -lah

表示同时应用 -l 和 -a的功能

当不使用选项和参数,直接使用 ls 命令本体,表示:以平铺形式,列出当前工作目录下的内容。

工作目录:

Linux系统的命令行终端,在启动的时候,默认会加载:

  • 当前登录用户的HOME目录作为当前工作目录,所以ls命令列出的是HOME目录的内容

  • HOME目录:每个Linux操作用户在Linux系统的个人账户目录,路径在:/home/用户名

cd:更换工作目录

cd全称ChangeDirectory , 更换当前所在的工作目录,语法:

cd [ Linux路径]

  • cd命令无需选项,只有参数,表示要切换到哪个目录下
  • cd命令直接执行,不写参数,表示会到用户的HOME目录

pwd:查看当前目录

pwd全称PrintWorkDirectory ,查看当前所在的工作目录, 语法:

pwd

  • 无选项,无参数,直接输入pwd即可

特殊路径符

  • .表示当前目录,比如 cd./Desktop 表示切换到当前目录下的 Desktop 目录内,和 cd Desktop效果一致
  • ..表示上一级目录,比如: cd..即可切换到上一级目录, cd../..切换到上两级的目录
  • ~ 表示HOME目录,比如:cd ~ 即可切换到HOME目录或 cd ~/Desktop,切换到HOME内的Desktop目录

mkdir:创建文件夹

mkdir全称MakeDirectory,创建新的目录(文件夹),语法:

mkdir [-p] Linux路径

  • 参数必填,表示Liunx路径,即要创建的文件夹的路径,相对路径和绝对路径均可
  • -p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

注意:创建文件夹需要修改权限,需要确保操作均在HOME目录内,不要在 HOME外操作,涉及到权限问题,本文后续也会更新权限管控的问题。

touch:创建文件

可以通过touch命令创建文件,语法:

touch Linux路径

  • touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用
  • 比如 touch test.txt 会在当前目录下创建一个名为 test.txt 这个空文件

cat:查看文件内容

cat [ concatenate ] ''连接',将多个文件的内容依次连接起来,并输出到标准输出

语法:

cat Linux路径

  • cat 同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用
  • Linux路径可以有多个,查看多个文件内容,并进行输出,多个路径之间使用空格分隔,如:cat test.txt test1.test

more:查看文件内容

more [ 命令同样可以查看文件内容,同 cat 不同的是:

  • cat是直接将内容全部显示出来
  • more支持翻页,如果文件内容过多,可以一页页的展示

语法:more Linux路径

同样没有选项,只有必填参数 ,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

  • more在查看文件内容的过程中,通过空格翻到下一页,通过 b [back]翻回上一页
  • 通过 q [quit] 退出查看

cp:复制文件文件夹

cp [copy ]

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

  • -r 选项可选,用于复制文件夹使用,表示递归( -recursive )
  • 参数1,Linux路径,表示被复制的文件或文件夹
  • 参数2,Linux路径,表示要复制去的地方

mv:移动文件或文件夹

mv [move ]命令可以用于移动文件/文件夹

语法:mv 参数1 参数2

  • 参数1,Linux路径,表示被移动的文件或文件夹
  • 参数2,Linux路径,表示要移动去的地方,如果目标不存在,则对文件进行改名

文件改名效果如下:

rm:删除文件、文件夹

rm [remove ]

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

  • 同cp命令一样,-r选项用于删除文件夹
  • -f 表示 force,强制删除(不会弹出提示确认信息)

普通用户删除内容不会弹出提示,只有 root 管理员用户删除内容会有提示

所以一般普通用户用不到 -f 选项

  • 参数1、参数2、......、参数N表示要删除的文件或文件夹路径,按照空格隔开

rm命令支持通配符 *,用来做模糊匹配

  • 符号 * 表示通配符,即匹配任意内容(包含空),示例:
  • test*,表示匹配任何以 test 开头的内容
  • *test,表示匹配任何以 test 结尾的内容
  • test,表示匹配任何包含 test 的内容

rm是一个危险的命令,特别是在处于root(超级管理员)用户的时候。
请谨慎使用。

如下命令,请千万千万不要在root管理员用户下执行:
rm -rf /
rm -rf /* 在根目录上强制删除所有文件

效果等同于在Windows上执行C盘格式化。

话虽这样说,谁不想逝逝删库跑路呢,这很刑啊。

俗话说一朝被蛇咬,十年怕井绳,如果我们想要避免一个错误的发生,最好的办法就是在可控范围内试试它

首先创建一个快照,保存当前虚拟机的状态

http://www.jsqmd.com/news/1135459/

相关文章:

  • STM32开发
  • 4.prompt
  • BI笔记之---增量方式处理多维数据集
  • 可靠性测试之 EMC:一文搞懂所有测试项和标准
  • OpenClaw 的分布式集群功能
  • CVE-2023-4966漏洞深度解析:NetScaler信息泄露原理与修复实战
  • 代理浏览器工具_agent-browser
  • 从向量空间到海森矩阵:剥开神经网络“寻底”的数学真相
  • Si4731与PIC18LF4680构建数字收音机系统详解
  • Wexflow图像处理自动化:批量处理、转换和优化的实用技巧
  • YOLOv8麻将识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置)
  • 3步掌握Aimmy:重新定义游戏公平性的智能瞄准革命
  • Python闭包与装饰器从入门到精通之深浅拷贝:解决闭包与装饰器中的可变对象陷阱
  • 3种方案实测:GEO系统如何提升网站AI引荐率
  • 【Java从入门到入土】47:构建工具:Maven与Gradle的战争
  • 如何快速搭建企业级后台管理系统:Layui-Admin完整实战指南
  • 新手友好!基于零代码平台学生用户画像-考勤主题标签构建全流程演示
  • 数据库Day1
  • 消息列表虚拟滚动_message-list
  • YOLOv8手语识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置)
  • 聊天智能体开发基础
  • 医美海报别再踩坑了!2026靠谱设计服务商推荐,合规、不贵、有质感
  • QRazyBox:让破损二维码重获新生的专业修复工具
  • jesd204b学习记录
  • 信息安全章节核心知识梳理
  • MCP基础版本
  • 基于Metasploit的内网渗透实战:从外网突破到域控攻陷
  • Claude 聊天记录导出|AI 导出鸭高效实现各类格式转换
  • 第一篇:Java 语言核心特性与运行机制
  • iCloud Photos Downloader:终极免费命令行工具,完整备份苹果照片库