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

【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后,按下回车键,系统会输出当前所在的目录路径。

常用选项

  1. -L(或 --logical

    • 输出当前工作目录的逻辑路径,包含符号链接的路径。
    • 这是 pwd 命令的默认行为。
  2. -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
  • 特点:相对路径依赖于当前工作目录,可能在不同的上下文中指向不同的位置。

 

通过..访问上一路径,参考当前目录。

用法

常用示例

  1. 更改到指定目录

    cd /path/to/directory
  2. 返回上一级目录

    cd ..

     3.返回用户主目录(家目录)

cd ~                                                   

     4.更改到上一次访问的目录

cd -

用户刚登录时所处的路径就是家目录。

touch指令

touch指令可以新建一个普通文件,也可以改变文档或目录的日期和时间。

常用选项

  1. -a
    仅更新文件的访问时间(Access time)。

    touch -a filename
  2. -m
    仅更新文件的修改时间(Modification time)。

    touch -m filename
  3. -c
    如果文件不存在,不会创建新文件。只会在文件存在时更新时间戳。

    touch -c filename
  4. -t
    使用指定的时间戳格式设置时间,格式为 [[CC]YY]MMDDhhmm[.ss]。例如:

    touch -t 202310031230.00 filename

    这将设置文件的时间戳为 2023 年 10 月 3 日 12:30:00。

  5. -d
    使用指定的日期字符串作为时间戳。可以使用人类可读的日期格式。

    touch -d "2023-10-03 12:30:00" filename
  6. -r
    使用另一个文件的时间戳来更新目标文件的时间戳。

    touch -r referencefile targetfile
  7. --help
    显示帮助信息。

    touch --help
  8. --version
    显示版本信息。

    touch --version

mkdir指令

  1. -p
    可以连续创建一串目录

  2. -m
    设置新目录的权限模式,格式为八进制数字。例如,设置权限为 755:

    mkdir -m 755 newdir
  3. --help
    显示帮助信息。

    mkdir --help
  4. --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,它可以全面概述分类模型的关键指标。在这篇文章中&#xff…...

高翔【自动驾驶与机器人中的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文件、数据库等)。以下是一个更详细的指南,包括示例代码&#xff…...

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尾…...

【搭建单双目散斑结构光Demo】

介绍 最近搭了一个用于研究的单目散斑结构光的硬件Demo。发射端使用VCSEL模组投影散斑,接收端使用工业相机采集图像。工业相机曝光时输出同步信号给驱动板,驱动板控制VCSEL发光投射出散斑图案,同步时间精度可以达到十微秒。也可以配两个工业…...

人工智能|大模型 —— 量化 —— 一文搞懂大模型量化技术:GGUF、GPTQ、AWQ

目前关于大模型量化技术的文章层出不穷,但对其理论部分的深入探讨却相对较少。本文将对大模型量化技术进行系统性的介绍,并重点聚焦于理论层面的深入解析。 一、大模型量化基础 大模型量化的核心在于将模型参数的精度从较高的位宽(bit-width…...

AutoDL云服务器避坑指南:从PyTorch到Jupyter,手把手搞定GPU环境配置

AutoDL云服务器GPU环境配置实战:从镜像选择到Jupyter避坑全攻略 第一次在AutoDL这类云GPU平台上配置深度学习环境时,那种既兴奋又忐忑的心情我至今记忆犹新。看着琳琅满目的镜像选项和复杂的版本匹配要求,稍有不慎就会陷入"版本地狱&qu…...

OpenClaw:四大使用挑战与破局思路

子玥酱 (掘金 / 知乎 / CSDN / 简书 同名) 大家好,我是 子玥酱,一名长期深耕在一线的前端程序媛 👩‍💻。曾就职于多家知名互联网大厂,目前在某国企负责前端软件研发相关工作,主要聚…...

STM32智能甲鱼养殖系统设计与实现

基于STM32的智能甲鱼养殖系统设计与实现1. 项目概述1.1 系统背景现代水产养殖行业正面临从传统人工管理向智能化转型的关键时期。甲鱼作为对水质环境敏感的特种水产品,其养殖过程中需要持续监测多项水质参数并保持稳定环境。传统人工监测方式存在响应滞后、精度不足…...

PyQt新手必看:Fluent Widgets vs PyQtGraph,哪个更适合你的GUI项目?

PyQt新手指南:Fluent Widgets与PyQtGraph的深度对比与选型策略 当你第一次踏入PyQt GUI开发的世界,面对琳琅满目的框架选择,是否感到迷茫?Fluent Widgets和PyQtGraph这两个名字可能已经出现在你的搜索列表中,但它们究竟…...

Java面向对象实战:从0到1手写奇偶判断工具类[特殊字符]新手保姆级教程

🌸你好呀!我是断弦承露🌟感谢陪伴~ 小白博主在线求友🌿 跟着小白学/Java/软件设计/鸿蒙开发/芯片开发📖专栏汇总:《软件设计师》专栏 | 《Java》专栏 | 《 RISC-V 处理器实战》专栏 | 《Flutter…...

Protege新手避坑指南:搞懂‘类’、‘属性’和‘推理’到底怎么用(附常见错误排查)

Protege新手避坑指南:搞懂‘类’、‘属性’和‘推理’到底怎么用(附常见错误排查) 第一次打开Protege时,满屏的术语和复杂的界面可能会让你感到不知所措。作为一款强大的本体编辑工具,Protege确实有着陡峭的学习曲线。…...

Agent 性能优化:降低 Token 消耗的 5 个技巧

Agent 性能优化:降低 Token 消耗的 5 个技巧系列文章: 《AI Agent 开发实战》第 7 期 难度等级: ⭐⭐⭐⭐ 预计耗时: 35 分钟🎯 本文目标 学会优化 AI Agent 性能: ✅ 减少 Token 消耗✅ 提高响应速度✅ 降…...

WeChatExporter深度解析:如何三步搞定iOS微信聊天记录完整导出

WeChatExporter深度解析:如何三步搞定iOS微信聊天记录完整导出 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 还在为无法备份微信聊天记录而烦恼吗&#xff…...