【Linux】从零开始学习Linux基本指令(一)

🚩纸上得来终觉浅, 绝知此事要躬行。
🌟主页:June-Frost
🚀专栏:Linux入门

🔥该文章主要了解Linux操作系统下的基本指令。

目录:

  • ⌛️指令的理解
  • ⏳目录和文件的理解
  • ⏳一些常见指令
    • ✉️ 查看账户信息
    • ✉️ pwd 指令
    • ✉️ ls 指令
    • ✉️ cd 指令
    • ✉️ tree 指令
    • ✉️ touch 指令
    • ✉️ stat 指令
    • ✉️ mkdir指令
    • ✉️ rmdir指令 && rm 指令
  • ❤️ 结语

⌛️指令的理解

 在计算机发展过程中,先出现的是指令,后来才有了图形化界面。指令操作和图形化界面操作在本质上是相同的,都是用户与操作系统交互的方式。它们都是为了实现特定的计算机任务而设计的,但是它们在表现形式和使用方式上有所不同:

  • 指令操作是一种基于文本的交互方式,用户通过输入命令来与操作系统进行交互。每个命令都有明确的语法和参数,系统根据用户输入的命令进行相应的操作。这种操作方式通常需要用户具有一定的计算机基础知识,能够理解命令的含义和操作方式。

  • 图形化界面是一种基于图形和图标的人机交互方式,用户通过鼠标点击、拖拽、选择等操作来与操作系统进行交互。这种操作方式通常需要用户通过直观的视觉感知来操作,不需要理解命令的含义和语法。

 图形化界面对于初学者或者不熟悉命令行的人来说较为友好,提供了直观易用的操作方式,例如通过鼠标点击、图标和菜单进行系统操作。但是,在某些情况下,由于技术、硬件设备或者用户体验等方面的原因,指令操作可能会比图形化界面操作更加快速、精确或者高效。


⏳目录和文件的理解

  • 文件:
    文件分为文件属性和文件内容。 文件属性指的是文件的元数据,即文件的一些描述信息,如文件的创建时间、修改时间、文件大小、文件类型等。文件内容指的是文件的数据,即文件中所包含的信息,如文本、图像、音频、视频等。无论是文件属性还是文件内容,它们都是二进制数据,都会被计算机存储。而且我们通过代码或指令进行的文件操作的本质是:对文件内容做操作或对文件属性做操作。

  • 目录
    Linux的整体目录结构是一颗多叉树。在Linux系统中,目录也被视为文件,它们以树形结构被组织在一起。**根目录(/)**是整个文件系统的起点,所有的目录和文件都从根目录开始。每个目录都包含一个或多个子目录,子目录可以是其他文件或文件夹,也可以是程序或脚本。
     Linux树状结构的每个目录节点都包含了对应的权限和所有者等信息。通过这种树状结构,用户可以轻松地浏览、查找和管理系统中的文件和目录。
     同时,Linux文件系统的树状结构也使得系统管理员可以更方便地进行系统管理和维护。例如,可以通过在根目录下创建新的目录来组织和管理不同类型的文件和程序,也可以通过修改目录的权限和所有者来控制用户对文件的访问权限。

    对于叶子节点,一定是普通文件或者空目录。对于非叶子节点,一定是目录。对文件的访问,必须先进行对节点的查找来找到对应的文件。


⏳一些常见指令

✉️ 查看账户信息

  • 语法:whoami
    功能: 查看当前账号身份。

  • 语法:who
    功能: 查看当前登录系统的用户信息

✉️ pwd 指令

  • 语法:pwd
    功能:显示当前所处的工作目录。

✉️ ls 指令

  • 语法:ls [选项][目录或文件]
    功能:显示文件的属性列表。

 ls的裸指令可以打印所有当前目录下的文件名属性

📗ls指令有很多选项,例如:

ls -l 可以列出文件的详细信息,包括文件类型、权限、所有者、组、大小、创建时间、名称等详细信息。
在这里插入图片描述
ls -l 也可以直接用 ll 表示。
在这里插入图片描述

ls -a 列出目录下的所有文件,包括以 . 开头的隐藏文件ls -a 会将文件名列出,如果搭配上 -l 就会列出详细信息。

注意: 指令ls -l -a 可以写成 ls -a -lls -alls -la

- d将目录像文件一样显示,而不是显示其下的文件。

一些其它选项:

  • -i 输出文件的 i 节点的索引信息。
  • -k 以 k 字节的形式表示文件的大小。
  • -n 用数字的 UID,GID 代替名称。
  • -F 在每个文件名后附上一个字符以说明该文件的类型, “*”表示可执行的普通文件; “/”表示目录; “@”表示符号链接; “|”表示FIFOs; “=”表示套接字(sockets)。
  • -r 对目录反向排序。
  • -t 以时间排序。
  • -s 在文件名后输出该文件的大小。
  • -R 列出所有子目录下的文件。
  • -1 一行只输出一个文件。

✉️ cd 指令

语法:cd 目录名 (绝对路径或相对路径)
功能:实现路径切换,改变工作目录。将当前工作目录改变到指定的目录下。

🔭 路径:

 在Linux中,“路径”是指文件或目录在目录结构中的位置。路径是由以“/”为路径分隔符多个目录名组成的,它表示从根目录(/)开始到达某个文件或子目录的线路。例如:/root/node
由于Linux的整体目录结构是一颗多叉树,子节点只有唯一一个父节点,所以文件或目录的搜索路径具有唯一性。

 前文中我们提到了两个隐藏文件:. 和 … ,他们分别表示当前路径和上级路径。

 cd 的作用就是实现路径切换,所以可以很好的利用 . 和 … 文件 。

在这里插入图片描述

 因为.和…文件在每个目录中都存在,所以根据路径写法的不同,可以将路径分为绝对路径和相对路径。绝对路径是指从根目录(/)开始表示系统中某个文件或目录的位置的方式。绝对路径在配置文件中常用,在系统当中,无论在什么位置都可以唯一定位一个文件。相对路径是以当前目录为参考起点,表示系统中某个文件或目录在目录结构中的位置的方式。在命令行场景经常用到。

⭐️一些其它的操作:

  • cd - 跳转回最近一次所处的目录。

  • cd ~ 进入用户家目录
    🔭在Linux系统中,家目录是每个用户的宿主目录,也是用户数据的存储位置。每个用户都有自己的家目录,通常在“/home”目录下,而root用户的家目录位于“/root”下。这些家目录是Linux系统中非常重要的部分,通常包含用户的配置文件、环境变量、命令信息和其它个人文件。当用户登录系统时,所处的位置就是自己的家目录。在家目录中,用户可以创建、修改和删除自己的文件和目录,也可以修改自己的环境变量和配置文件。

✉️ tree 指令

  • 语法:tree [选项] [目录]
    功能:以树状图列出目录的内容,包括文件和子目录等。

 目录是需要显示目录结构的路径。如果未指定目录,则将默认使用当前目录

📗一些常用选项:

  • -a 显示所有文件和目录,包括以.开头的隐藏文件。
  • -d 只显示目录,而不显示文件。
  • -L level 限制显示的层级深度,替换level为一个整数。
  • -I pattern 通过指定一个模式来过滤不想显示的文件或目录。
  • -f 输出完整的路径名称。
  • -i 不以 ASCII 图形显示树状结构,使用简单的一致的缩进格式。

✉️ touch 指令

  • 语法:touch [选项] <文件名>
    功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。


  也可以通过touch n1 n2 n3连续创建文件。

📗一些常用选项:

  • -a 或--time=atime或--time=access或--time=use 只更改存取时间。
  • -c 或--no-create 不建立任何文档。
  • -d 使用指定的日期时间,而非现在的时间。
  • -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
  • -m 或--time=mtime或--time=modify 只更改变动时间。
  • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
  • -t 使用指定的日期时间,而非现在的时间。

✉️ stat 指令

  • 语法:stat [选项] 文件名
    功能:显示指定文件或文件系统的文件状态信息。

 Access,Modify,Change是文件系统针对文件操作的三种不同类型的时间记录
📗Access指的是最后一次读取文件的时间,也就是文件被访问的时间。在终端上用cat、more 、less、grep、sed、 cp 、file一个文件时,此文件的Access的时间记录都会被更新(空文件例外),纯粹的access并不会影响modify和change,但会受到modify行为的影响。
📘 Modify指的是最后一次修改数据的时间,通常是指文件内容的修改,即文件的写操作。例如,当更改了一个文件的内容时,此文件的modify的时间记录会被更新。用ls -l看到的文件时间是最近一次modify的时间。对于目录也是如此。
📙 Change指的是最后一次修改元数据的时间,也就是用来描述数据的数据,更通俗的说就是数据的属性。元数据并不改变文件的内容,而是文件的属性,例如文件的权限、所有者、时间戳等信息。

📗一些常用选项:

  • -c 指定输出格式。
  • -f 显示文件系统状态而非文件状态。
  • -t 以简洁方式输出信息。

✉️ mkdir指令

语法:mkdir [选项] 目录名
功能:在当前目录下创建目录。


📗一些常用选项:

  • -p 递归建立多个目录

在这里插入图片描述

✉️ rmdir指令 && rm 指令

  • 语法:rmdir [选项] 目录
    功能:删除空目录
    适用对象:具有当前目录操作权限的所有使用者。

在这里插入图片描述

  • 语法: rm [选项][目录或文件名]
    功能:删除文件或目录。
    适用对象:所有使用者。

📗一些常用选项:

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件

📙删除目录(注意带上-r):

📙删除文件:
在这里插入图片描述


❤️ 结语

 文章到这里就结束了,如果对你有帮助,你的点赞将会是我的最大动力,如果大家有什么问题或者不同的见解,欢迎大家的留言~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/104940.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

“小程序:改变电商行业的新趋势“

目录 引言1. 小程序的简介1.1 什么是小程序&#xff1f;1.2 小程序的优势 2. 小程序之电商演示1.注册微信小程序2.安装开发工具3.创建项目 3. 小程序之入门案例总结 引言 随着移动互联网的迅猛发展&#xff0c;小程序作为一种全新的应用形态&#xff0c;正在逐渐改变着传统电商…

鲲山科技:引入和鲸 ModelWhale,实现量化策略的高效迭代

量化投资是数据科学在金融行业的应用。 2023 年&#xff0c;量化行业的超额收益开始收敛&#xff0c;量化私募如何形成自身核心竞争力&#xff1f; 和鲸拜访客户鲲山科技&#xff08;深圳&#xff09;&#xff0c;揭示其“弯道超车”的独家秘诀。 群体作战 年初至今&#xff…

使用Selenium的WebDriver进行长截图

from selenium import webdriver from PIL import Image from io import BytesIO # 创建浏览器驱动 driver webdriver.Chrome()# 打开网页 driver.get("https://www.douban.com/") # 替换为您要截图的网页URL def get_long_shot(driver,table_element):# 获取页面的…

【软考-中级】系统集成项目管理工程师-配置管理历年案例

持续更新。。。。。。。。。。。。。。。 目录 2023 上 试题三(20分) 2023 上 试题三(20分) 某公司有自己的质量管理体系&#xff0c;其中配置管理程序已运行多年&#xff0c;由项目经理牵头组建变更控制委员会(CCB)&#xff0c;在创建配置管理环境后&#xff0c;并经过变更申请…

golang中的RSA算法,加密解密,签名校验,导出公钥密钥,导入公钥密钥

RSA算法广泛应用与数据加密&#xff08;比如 SSL 传输层加密&#xff09;&#xff0c;数字签名&#xff08;比如支付宝的支付签名&#xff09;。 1、加密解密 // encrypts the given message with RSA-OAEP func f1() {// random 用来生成随机的素数rsaPriviteKey, err : rsa…

计算机视觉实战--直方图均衡化和自适应直方图均衡化

计算机视觉 文章目录 计算机视觉前言一、直方图均衡化1.得到灰度图2. 直方图统计3. 绘制直方图4. 直方图均衡化 二、自适应直方图均衡化1.自适应直方图均衡化&#xff08;AHE&#xff09;2.限制对比度自适应直方图均衡化&#xff08;CRHE&#xff09;3.读取图片4.自适应直方图均…

NewStarCTF 2023 公开赛道 WEEK2|Crypto

目录 T1.滴啤 T2.不止一个pi T3.halfcandecode T4.Rotate Xor T5.broadcast T6.partial decrypt T1.滴啤 下载题目附件&#xff0c;我们获得到以下代码。 from Crypto.Util.number import * import gmpy2 from flag import flag def gen_prime(number):p getPrime(numb…

openGauss指定schema下全部表结构备份与恢复

本次测试针对openGauss版本为2.0.5 gs_dump指定schema下全部表结构信息备份 gs_dump database_name -U username -p port -F c -s -n schema_name -f schema.sqldatabase_name&#xff1a;数据库名&#xff0c;要备份的数据库名称 username&#xff1a;用户名&#xff0c;数据…

跨行或跨列布局

关键点 1、float 实现 2、flex 实现 3、grid 实现效果预览: html: <div class="container"><h2>float 实现</h2>

10.12按键中断

设置按键中断&#xff0c;按键1按下&#xff0c;LED亮&#xff0c;再按一次&#xff0c;灭 按键2按下&#xff0c;蜂鸣器响。再按一次&#xff0c;不响 按键3按下&#xff0c;风扇转&#xff0c;再按一次&#xff0c;风扇停 keyit.h: #ifndef __KEYIT_H__ #define __KEYIT_…

对计算思维的培养

斯坦福大学在 “ 下个十年计算机课程开设情况方案中提出了新的 核心课程体系&#xff0c;包括计算机数学基础、计算机科学中的概率论、数据 结构和算法的理论核心课程&#xff0c;以及包括抽象思维和编程方法、计算机 系统与组成、计算机系统和网络原理在内的系统核心课程。…

Go语言介绍与安装

介绍与安装 本教程介绍了 Go&#xff0c;并讨论了选择 Go 相对于其他编程语言的优势。我们还将学习如何在Windows 中安装 Go。 介绍 Go也称为Golang&#xff0c;是由 Google 开发的一种开源、编译型、静态类型的编程语言。 Go创造背后的关键人物是Rob Pike、 Ken Thompson和…

Blender:渲染一个简单动画

接上 Blender&#xff1a;对模型着色_六月的翅膀的博客-CSDN博客 目标是做一个这种视频 先添加一个曲线&#xff0c;作为相机轨迹 然后添加一个相机 对相机添加物体约束&#xff0c;跟随路径&#xff0c;选择曲线&#xff0c;然后点击动画路径 假如对相机设置跟随路径后&…

STM32_驱动蜂鸣器自定义库

STM32_驱动蜂鸣器自定义库 功能说明&#xff1a; 1、可以实现设置蜂鸣器的音调 2、可以设置蜂鸣器连续鸣响次数 3、设置连续鸣响时间间隔 main.c #include "mymain.h" #include "dev_control.h"int main(void) {HAL_Init();SystemClock_Config();MX_GPIO_…

Linux高性能服务器编程 学习笔记 第十三章 多进程编程

我们将讨论Linux多进程编程的以下内容&#xff1a; 1.复制进程映像的fork系统调用和替换进程映像的exec系列系统调用。 2.僵尸进程以及如何避免僵尸进程。 3.进程间通信&#xff08;Inter Process Communication&#xff0c;IPC&#xff09;最简单的方式&#xff1a;管道。 …

SSM - Springboot - MyBatis-Plus 全栈体系(二十六)

第六章 SpringBoot 快速启动框架&#xff1a;SpringBoot3 实战 一、SpringBoot3 介绍 1. SpringBoot3 简介 SpringBoot 版本&#xff1a;3.0.5 到目前为止已经学习了多种配置 Spring 程序的方式。但是无论使用 XML、注解、Java 配置类还是他们的混合用法&#xff0c;都会觉…

String、StringBuilder、StringBuffer区别

String、StringBuilder、StringBuffer区别 面试官&#xff1a;请你谈谈String、StringBuilder、StringBuffer区别 作为经典Java八股&#xff0c;是面试必考的热门点。 下面让我们一起来看一下他们的区别吧&#xff01; 主要是测试他们的效率和应用场景&#xff0c;具体语法不在…

浅谈机器学习中的概率模型

浅谈机器学习中的概率模型 其实&#xff0c;当牵扯到概率的时候&#xff0c;一切问题都会变的及其复杂&#xff0c;比如我们监督学习任务中&#xff0c;对于一个分类任务&#xff0c;我们经常是在解决这样一个问题&#xff0c;比如对于一个n维的样本 X [ x 1 , x 2 , . . . .…

Git问题汇总

1.取消全局代理 一般报错Failed to connect to github.com port 443 after 21089 ms: Couldn’t connect to server 取消全局代理&#xff1a; git config --global --unset http.proxygit config --global --unset https.proxy####2.git 推送出现 "fatal: The remote e…

Google云平台构建数据ETL任务的最佳实践

在数据处理中&#xff0c;我们经常需要构建ETL的任务&#xff0c;对数据进行加载&#xff0c;转换处理后再写入到数据存储中。Google的云平台提供了多种方案来构建ETL任务&#xff0c;我也研究了一下这些方案&#xff0c;比较方案之间的优缺点&#xff0c;从而找到一个最适合我…