【Linux】基础指令 1
Linux中各个指令是相互联系的,所以一开始学习Linux时,对指令很陌生是正常的,不用花费大量的时间去刻意的记忆,在我们一次次的使用当中,这些指令自然会烂熟于心。
简单看看各个指令的功能
ls指令
显示当前目录下的文件
pwd指令
显示用户当前所处的目录
cd指令
改变到指定的路径
touch指令
新建一个普通文件
mkdir指令
创建一个新目录
ls指令
前边提到了ls指令可以显示当前目录下的全部文件,侧重于不同的板块,它还有很多的其他的选项。
例如我们加一个-a就可以显示一个目录下的所有文件(包括隐藏文件)。
. 和 ..就是隐藏文件。Linux中任何一个目录(包括空目录)中都会存在 .和..。目录就是我们理解的文件夹,文件由属性和内容两部分构成创建的一个新的文件夹(不额外储存任何信息)那么它任然会占用内存,储存文件的属性也需要内存;而学习文件无非就是对文件的内容和属性进行操作。用stat命令可以查看一个文件的详细信息,文件的时间包括三部分--ACM。
A(Access Time, atime)访问时间,记录文件最后被访问的时间。每次读取文件时,这个时间会更新。
C(Change Time, ctime)修改时间,记录文件元数据(如权限或所有者)最后被更改的时间。与文件内容无关,但如果文件的权限或其他属性被修改,这个时间会更新。
M(Modification Time, mtime)状态改变时间,记录文件内容最后被修改的时间。当文件内容被写入时,此时间会更新。
.指向(当前目录)当前的目录本身 ,而..指向(上级目录)当前目录的父目录。这是不是和我们数据结构中学习的二叉树很相似呢,Linux的文件结构就是一棵以/(根节点)开头的多叉树。并且子叶节点一定是普通文件或者空目录,非子叶节点一定是非空目录。windows的文件结构也一样,也是由根目录(此电脑)开头的多叉树。
通过..我们就可以切换到上一级目录
那么一直使用..向父目录切换,会发生什么呢?
我们发现,最终会停在根目录,就无法向上一级目录切换了。
ls -l可以以长格式显示文件的内容
在window中,以文件的扩展名(后缀)来区分文件
以exe结尾的是可执行程序:
PDF文件的后缀就是pdf。
在Linux中以d开头的是目录(文件夹),以-开头的是普通文件
在Linux中,几乎所有的命令本质都是可执行文件,当我们把自己写的程序编译后生成可执行程序后 再拷贝到当前路径下就可以像输入命令一样使用它,这里先埋个坑,这个我们后边再实现。
对于ls指令只了解到这里,这里是它其他的常用选项。
-a
:显示所有文件,包括隐藏文件(以.
开头的文件)。-l
:以长格式显示详细信息,包括权限、所有者、文件大小和修改时间。-h
:与-l
结合使用,显示人类可读的文件大小(例如 KB, MB)。-R
:递归地列出所有子目录。-t
:按修改时间排序,最近的文件排在前面。-S
:按文件大小排序。-r
:反向排序。
pwd指令
在终端中输入pwd后,按下回车键,系统会输出当前所在的目录路径。
常用选项
-
-L
(或--logical
)- 输出当前工作目录的逻辑路径,包含符号链接的路径。
- 这是
pwd
命令的默认行为。
-
-P
(或--physical
)- 输出当前工作目录的物理路径,解析所有符号链接,显示实际的文件系统路径。
cd命令
相对路径和绝对路径
绝对路径
- 定义:绝对路径是从根目录开始,描述文件或目录的完整路径。
- 示例:在Unix/Linux系统中,绝对路径通常以
/
开头,比如/home/user/documents/file.txt
;在Windows系统中,路径可能以驱动器字母开头,例如C:\Users\User\Documents\file.txt
。 - 特点:无论当前工作目录是什么,绝对路径总是指向同一个位置。
以根目录为参考访问各个目录
相对路径
- 定义:相对路径是相对于当前工作目录来描述文件或目录的路径。
- 示例:如果当前工作目录是
/home/user
,那么documents/file.txt
就是一个相对路径,指向/home/user/documents/file.txt
。 - 特点:相对路径依赖于当前工作目录,可能在不同的上下文中指向不同的位置。
通过..访问上一路径,参考当前目录。
用法
常用示例
-
更改到指定目录:
cd /path/to/directory
-
返回上一级目录:
cd ..
3.返回用户主目录(家目录):
cd ~
4.更改到上一次访问的目录:
cd -
用户刚登录时所处的路径就是家目录。
touch指令
touch指令可以新建一个普通文件,也可以改变文档或目录的日期和时间。
常用选项
-
-a
仅更新文件的访问时间(Access time)。touch -a filename
-
-m
仅更新文件的修改时间(Modification time)。touch -m filename
-
-c
如果文件不存在,不会创建新文件。只会在文件存在时更新时间戳。touch -c filename
-
-t
使用指定的时间戳格式设置时间,格式为[[CC]YY]MMDDhhmm[.ss]
。例如:touch -t 202310031230.00 filename
这将设置文件的时间戳为 2023 年 10 月 3 日 12:30:00。
-
-d
使用指定的日期字符串作为时间戳。可以使用人类可读的日期格式。touch -d "2023-10-03 12:30:00" filename
-
-r
使用另一个文件的时间戳来更新目标文件的时间戳。touch -r referencefile targetfile
-
--help
显示帮助信息。touch --help
-
--version
显示版本信息。touch --version
mkdir指令
-
-p
可以连续创建一串目录 -
-m
设置新目录的权限模式,格式为八进制数字。例如,设置权限为 755:mkdir -m 755 newdir
-
--help
显示帮助信息。mkdir --help
-
--version
显示版本信息。mkdir --version
相关文章:

【Linux】基础指令 1
Linux中各个指令是相互联系的,所以一开始学习Linux时,对指令很陌生是正常的,不用花费大量的时间去刻意的记忆,在我们一次次的使用当中,这些指令自然会烂熟于心。 简单看看各个指令的功能 ls指令 显示当前目录下的文…...

Linux_kernel字符设备驱动12
一、字符设备的编程框架 在Linux_kernel驱动开发11中,我们介绍的系统调用。只是为了做一个实验,在真正开发时,我们并不会直接在内核中添加一个新的系统调用,这样做会导致内核体积变大。 1、字符设备结构体 我们实现一个硬件字符设…...
服务保护sentinel
线程隔离 - 线程池隔离:给每个服务调用业务分配一个线程池,利用线程池本身实现隔离效果。 - 信号量隔离:不创建线程池,而是计数器模式,记录业务使用的线程数量,达到信号量上限时,禁止新的请求。…...

【ubuntu】Ubuntu20.04安装中文百度输入法
1.download 百度Linux输入法-支持全拼、双拼、五笔 2.unzip unzip Ubuntu_Deepin-fcitx-baidupinyin-64.zip 3.setting 3.1 setting fcitx sudo apt install aptitude sudo aptitude install fcitx-bin fcitx-table fcitx-config-gtk fcitx-frontend-all sudo aptitude in…...

蓝桥杯【物联网】零基础到国奖之路:十八. 扩展模块之光敏和AS312
蓝桥杯【物联网】零基础到国奖之路:十八.扩展模块之光敏和AS312 第一节 硬件解读第二节 CubeMX配置第二节 代码 第一节 硬件解读 光敏和AS312如下图: 光敏电阻接到了扩展模块的5号引脚,5号引脚接了2个电阻,R8和光敏电阻。我们通过ADC读取这…...
如何在微信小程序中实现分包加载和预下载
如何在微信小程序中实现分包加载和预下载 概述 微信小程序提供了分包加载和预下载功能,这有助于优化应用的加载时间,提升用户体验。本文将详细介绍如何在微信小程序中配置分包加载和预下载。 步骤一:配置分包加载 修改app.json文件&#x…...

初识TCP/IP协议
回顾上文 来回顾一下TCP协议的特性,有一道比较经典的题:如何使用UDP实现可靠传输,通过应用程序的代码,完成可靠传输的过程? 原则,TCO有啥就吹啥,引入滑动窗口,引入流量控制&#x…...

使用 classification_report 评估 scikit-learn 中的分类模型
介绍 在机器学习领域,评估分类模型的性能至关重要。scikit-learn 是一个功能强大的 Python 机器学习工具,提供了多种模型评估工具。其中最有用的函数之一是 classification_report,它可以全面概述分类模型的关键指标。在这篇文章中ÿ…...

高翔【自动驾驶与机器人中的SLAM技术】学习笔记(十)高翔书中的细节:参考链接;卫星导航;ESKF
一、 参考链接 我认真查找了好多地方:结果在最后一页。 作者GITHUB链接如下: https://github.com/gaoxiang12/slam_in_autonomous_driving 全书所有参考链接 :如下 1 https://www.sae.org/standards/content/j3016_202104 2 http://www.evinchina.com/articleshow-217.htm…...
【在Python中爬取网页信息并存储】
在Python中爬取网页信息并存储的过程通常涉及几个关键步骤:发送HTTP请求、解析HTML内容、提取所需数据,以及将数据存储到适当的格式中(如文本文件、CSV文件、数据库等)。以下是一个更详细的指南,包括示例代码ÿ…...

ESP32 Bluedroid 篇(1)—— ibeacon 广播
前言 前面我们已经了解了 ESP32 的 BLE 整体架构,现在我们开始实际学习一下Bluedroid 从机篇的广播和扫描。本文将会以 ble_ibeacon demo 为例子进行讲解,需要注意的一点是。ibeacon 分为两个部分,一个是作为广播者,一个是作为观…...

【通配符】粗浅学习
1 背景说明 首先要注意,通配符中的符号和正则表达式中的特殊符号具备不同的匹配意义,例如:*在正则表达式中表示里面是指匹配前面的子表达式0次或者多次,而在通配符领域则是表示代表0个到无穷个任意字符。 此外,要注意…...

Spring MVC 常用注解
目录 基础概念 常用注解介绍 基础概念 1、MVC :代表一种软件架构设计思想,通俗的理解:客户端发送请求到后台服务器的Controller(C),控制器调用Model(M)来处理业务逻辑,处理完成后,返回处理后的数据到Vie…...

水泵模块(5V STM32)
目录 一、介绍 二、传感器原理 1.尺寸介绍 2.继电器控制水泵电路原理图 三、程序设计 main.c文件 bump.h文件 bump.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 水泵模块(bump)通常是指用于液体输送系统的组件,它负责将水或其他流体从低处提…...

需求6:如何写一个后端接口?
这两天一直在对之前做的工作做梳理总结,不过前两天我都是在总结一些bug的问题。尽管有些bug问题我还没写文章,但是,我今天不得不先停下对bug的总结了。因为在国庆之后,我需要自己开发一个IT资产管理的功能,这个功能需要…...
《Linux从小白到高手》理论篇(五):文件权限控制及文件操作相关的命令
本篇介绍Linux文件权限控制及文件操作相关的命令,看完本文,有关Linux文件权限控制及文件操作相关的常用命令你就掌握了99%了。 文件权限 在介绍文件权限之前先来复习下Linux的文件类型,始终记住那句话:Linux系统下,一…...

异常场景分析
优质博文:IT-BLOG-CN 为了防止黑客从前台异常信息,对系统进行攻击。同时,为了提高用户体验,我们都会都抛出的异常进行拦截处理。 一、异常处理类 Java把异常当做是破坏正常流程的一个事件,当事件发生后,…...

Leetcode: 0001-0010题速览
Leetcode: 0001-0010题速览 本文材料来自于LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解 遵从开源协议为知识共享 版权归属-相同方式…...
计算机的错误计算(一百一十二)
摘要 计算机的错误计算(六十三)与(六十八)以及(六十九)分别探讨了大数与 附近数以及 附近数 的余切函数的计算精度问题。本节讨论余切序列(即迭代 )的计算精度问题。 余切序列是指…...

C++基础(7)——STL简介及string类
目录 1.STL简介 1.1什么是 1.2STL的历史版本 1.3STL的六大组件 编辑 1.4有用的网址 2.string类 2.1string的多种定义方式 2.2string的插入 2.2.1尾插(push_back) 2.2.2insert插入 2.3拼接(append) 2.4删除 2.4.1尾…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
MySQL JOIN 表过多的优化思路
当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...