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

Linux系统操作篇 one -文件指令及文件知识铺垫

Linux操作系统入门-系统篇

前言

Linux操作系统与Windows和MacOS这些系统不同,Linux是黑屏的操作系统,操作方式使用的是指令和代码行来进行,因此相对于Windows和MacOS这些带有图形化界面的系统,Linux的入门门槛和上手程度要更高,当然也有些公司把Linux的图形化界面做出来了,但不在本文谈论的重点。本文主要谈论对于Linux操作系统的理解,以及文件和目录这些抽象的概念,再者是部分文件和目录操作的指令等。以上这些主要都是让大家熟悉并上手Linux的操作方式,主要目标是找感觉,与鼠标操作Windows的差异这种感觉。废话不多说,让我们进入正文来探讨第一个问题吧。

如何学习Linux

与Windows不同,Linux是不具备图形化界面的操作系统,就是说在Linux系统中鼠标是无法使用的也不存在所谓的 桌面(desktop)。此外,由于无法显示画面,因此我们在电脑上娱乐的游戏、电影等等方面的软件都是无法在Linux上看到的。这种操作的不便也给Linux的学习成本增加了,例如我们在Windows中打开桌面上的一个软件的这个过程是移动鼠标双击对应软件的图标即可。但在Linux上需要通过指令的方式切换到该软件所在的目录内,在执行该程序。因此需要大家多花时间来自己实践操作Linux系统才能换来效率的收益。
学Linux主要分为两大部分:系统篇网络篇,本文及此后好几篇都是围绕系统篇来展开。
系统篇主要学习如何操纵Linux操作系统以及Linux操作系统运作的底层原理,网络篇主要围绕Linux与网络相关的知识来展开,如如何建立网络库等。

Linux系统理解

操作Linux系统简单来说就是操控文件和目录的过程,因为在Linux系统中所有的东西都是文件或目录,例如常说的TXT文件、键盘、显示器甚至是网络库在Linux系统面前都是一个个的目录。系统有相似性,这点也说明Windows的底层很可能也是由一个个文件和目录组成的。此后我们学习Linux操作相关指令几乎都是对文件和目录进行操作。

文件和目录

文件和目录是Linux存储级的概念,作用是存储系统使用时的数据,也就是存储用户和维持系统正常运行的数据。文件是直接存储数据,而目录是存储文件或者目录的从而间接存储数据的。注意区分,Windows系统下喜欢把目录叫文件夹,但Linux下仅被称作目录,也就是说目录就相当于Windows系统下的文件夹,或许也有人喜欢把Linux的目录叫文件夹,但目录就是目录,没什么好说的。

文件的分类

文件有多种,在Windows系统下通常能见到像 ‘.txt ‘’.png’ 这种文件,在Windows中主要通过文件后缀来区分文件的属性,但在Linux系统中则不然。Linux主要通过开头第一个符号来区分文件属性,如下图:
Linux文件与目录
文件大概可以分为以下几类:

以属性开头第一个字母作为区分
'.' -- 隐藏文件
'd' -- 目录
'-' -- 普通文件
'c' -- 字符文件
'b' -- 块设备文件
'l' -- 连接文件
'p' -- 管道文件
's' -- socket文件(网络相关)

后续会专门讲一些与文件相关的指令,集中为一个统一的专题,这里暂不做介绍。

目录

什么是目录?目录就是存储文件或其他目录的一块空间,事实上在Linux系统中的所有文件和目录都是存储于一个叫根 目录(/) 的空间底下,也就是说整个操作系统也是运作在一块巨大的目录中的。

Linux目录结构

在数据结构课程中我们知道树这一结构,事实上目录就是一棵树,根节点对应根目录,通过根目录就能用递归的方式来管理子目录。树形结构的存储方式有一个特点,就是一个子节点只有一个父亲,由于同一个父目录下不可出现同名子目录,因此目录的位置具有唯一性,所以才能有统一的管理方式。
Linux的目录结构
了解什么是 路径, 在Windows中路径就是文件或文件夹所处的位置如下图所示:
Windows中的路径
Linux路径
简单来说,路径就是文件在内存或硬盘中的位置,就相当于文件的家。通常,Linux用 ’ / ’ (反斜杠)作为分隔符Windows则用 ’ \ '(斜杠)作为分隔符。在每个文件创建后,系统都会自动生成两个隐藏目录分别为 [.][. .],其中** . **表示当前目录, ‘. .’ 表示上级目录。
当前目录和上级目录

绝对路径和相对路径

绝对路径: 以根目录为起点终于目标文件或目录(绝对路径具有唯一性)。
相对路径:以某个非根目录为起点终于目标文件或目录(该路径具有相对性)。
~:进入家目录。
-:返回最近访问的目录。
绝对路径
相对路径
绝对路径是文件位置的唯一地址,通过绝对路径能够定位到目录中的唯一子目录或文件,因此绝对路径具有权威性。相对路径则是按照非根目录来开始的,因此该路径仅具有时效性,如果路径中某个文件或者目录为空则无法得到有效的位置,绝对路径则不同,绝对路径中如果目标文件或者目标目录存在则前面的路径都存在。
一般情况下,建立重要的文件确保文件位置不出错的话都需要绝对路径,但其他大部分情况如路径切换这些都可以随意使用相对路径。
以上是Linux文件与目录的所有内容了,下面介绍一下一下常用的文件操作命令。

文件操作指令

ls指令

格式: [ls + 选项 + 目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。
对于文件,将列出文件名以及其他信息。
常用选项:
ls常用选项
对于目录
对于文件

pwd指令

格式:pwd
功能:显示用户当前所在的目录。
当前所处路径

cd指令

格式:[cd 目录名]
功能:改变工作目录,将当前工作目录改变到指定的目录下。
返回上级目录
常用目录

touch指令

格式:[touch + 选项 + 文件]
功能:touch命令参数可以更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项:
touch指令常用选项

mkdir指令

语法:[mkdir + 选项 + dirname…]
功能:在当前目录下创建一个名为“dirname”(自己随意设置名称)的目录
常用选项:
mkdir指令对应的选项

rmdir指令&rm指令

格式:[rmdir + -p + dirname]
适用对象:具有当前目录操作权限的所有使用者。
功能:删除空目录。
常用选项:
在这里插入图片描述
格式:[rm + -f/-i/-r/-v + dirname/dir]
适用对象:所有使用者
功能:删除文件或目录。
常用选项:
rm指令常用选项

cp指令

格式:[cp + 选项 + 源文件或目录 + 目标文件或目录]
功能:复制文件或目录
说明:cp指令用于复制文件或目录
常用选项:
在这里插入图片描述

mv指令

格式:[mv + 选项 + 源文件或目录 + 目标文件或目录]
功能:
mv
常用选项:
mv选项

cat指令

格式:[cat + 选项 + 文件]
功能:查看目标文件的内容。
常用选项:
cat指令的选项

more指令

格式:[more + 选项 + 文件]
功能:more命令的功能类似cat
常用选项:1.[-n] 对输出的所有行进行编号。2.[q] 退出more

less指令

格式:[less + 参数 + 文件]
功能:less与more类似,但less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且less在查看之前不会加载整个文件。
选项:
在这里插入图片描述

head指令&tail指令

格式:[head + 参数 + 文件]
功能:head用于显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
选项:[-n] n代表行数,显示的行数。
tail指令
格式:[tail + 必要参数 + 选择参数 + 文件]
功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项:
tail选项
以上是本篇文章的全部内容了,感谢大家的关看。

相关文章:

Linux系统操作篇 one -文件指令及文件知识铺垫

Linux操作系统入门-系统篇 前言 Linux操作系统与Windows和MacOS这些系统不同,Linux是黑屏的操作系统,操作方式使用的是指令和代码行来进行,因此相对于Windows和MacOS这些带有图形化界面的系统,Linux的入门门槛和上手程度要更高&…...

隨筆20241028 ISR 的收缩与扩展及其机制解析

在 Kafka 中,ISR(In-Sync Replicas) 是一组副本,它们与 Leader 保持同步,确保数据一致性。然而,ISR 的大小会因多种因素而变化,包括收缩和扩展。以下是 ISR 收缩与扩展的详细解释及其背后的机制…...

linux-字符串相关命令

1、cut 提取文件每一行中的内容 下面是一些常用的 cut 命令选项的说明: -c, --characters列表:提取指定字符位置的数据。-d, --delimiter分界符:指定字段的分隔符,默认为制表符。-f, --fieldsLIST:提取指定字段的数据…...

ES6 函数的扩展

ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法 ES6 允许为函数的参数设置默认值,即直接写在参数定义的后面 参数变量是默认声明的,所以不能用 let 或 const 再次声明 使用参数默认值时,函数不能有同名参…...

Mac 查看占用特定端口、终止占用端口的进程

在 macOS 上,可以使用以下命令来查看占用特定端口(例如 8080)的进程: lsof -i :8080命令说明 lsof:列出打开的文件和网络连接信息。-i :8080:筛选出正在监听 8080 端口的进程。 输出结果结构 执行上述命…...

C#入坑JAVA MyBatis入门 CURD 批量 联表分页查询

本文,分享 MyBatis 各种常用操作,不限于链表查询、分页查询等等。 1. 分页查询 在 下文的 的「3.4 selectPage」小节,我们使用 MyBatis Plus 实现了分页查询。除了这种方式,我们也可以使用 XML 实现分页查询。 这里&#xff0c…...

RabbitMQ 安装(Windows版本)和使用

安装 安装包获取 可以自己找资源,我这里也有百度云的资源,如果没失效的话可以直接用。 通过百度网盘分享的文件:RabbitMQ 链接:https://pan.baidu.com/s/1rzcdeTIYQ4BqzHLDSwCgyw?pwdfj79 提取码:fj79 安装教程…...

Apache paimon表管理

表管理 2.9.4.1 管理快照 1)快照过期 Paimon Writer每次提交都会生成一个或两个快照。每个快照可能会添加一些新的数据文件或将一些旧的数据文件标记为已删除。然而,标记的数据文件并没有真正被删除,因为Paimon还支持时间旅行到更早的快照。它们仅在快照过期时被删除。 …...

java 第19天

一.Lambda表达式 前提是:参数是函数式接口才可以书写Lambda表达式 函数式接口条件: 1.接口 2.只有一个抽象方法 lambda表达式又称为匿名函数,允许匿名函数以参数的形式传入方法,简化代码 lambda表达式分为两部分()->{} …...

什么是服务器?服务器与客户端的关系?本地方访问不了网址与服务器访问不了是什么意思?有何区别

服务器是一种高性能的计算机,它通过网络为其他计算机(称为客户端)提供服务。这些服务可以包括文件存储、打印服务、数据库服务或运行应用程序等。服务器通常具有强大的处理器、大量的内存和大容量的存储空间,以便能够处理多个客户…...

Spring(1)—Spring 框架:Java 开发者的春天

一、关于Spring 1.1 简介 Spring 框架是一个功能强大的开源框架,主要用于简化 Java 企业级应用的开发,由被称为“Spring 之父”的 Rod Johnson 于 2002 年提出并创立,并由Pivotal团队维护。它提供了全面的基础设施支持,使开发者…...

MT1401-MT1410 码题集 (c 语言详解)

目录 MT1401归并排序 MT1402堆排序 MT1403后3位排序 MT1404小大大小排序 MT1405小大大小排序II MT1406数字重排 MT1407插入 MT1408插入 MT1409旋转数组 MT1410逆时针旋转数组 MT1401归并排序 c 语言实现代码 #include <stdio.h>// merge two subarrays void merge(int a…...

React基础语法

1.React介绍 React由Meta公司开发&#xff0c;是一个用于构建Web和原生交互界面的库 1.1 React优势 相较于传统基于DOM开发的优势 1.组件化的开发方式 2.不错的性能 相较于其他前端框架的优势 1.丰富的生态 2.跨平台支持 1.2React的时长情况 全球最流行&#xff0c;大厂…...

《Kadane‘s Algorithm专题:最大和连续子数组》

&#x1f680; 博主介绍&#xff1a;大家好&#xff0c;我是无休居士&#xff01;一枚任职于一线Top3互联网大厂的Java开发工程师&#xff01; &#x1f680; &#x1f31f; 在这里&#xff0c;你将找到通往Java技术大门的钥匙。作为一个爱敲代码技术人&#xff0c;我不仅热衷…...

Vue基础(5)

ref属性 在 Vue2 中&#xff0c;ref是一个特殊的属性&#xff0c;用于在模板中获取对某个 DOM 元素或子组件的引用。通过 ref&#xff0c;我们可以在 JavaScript 代码中直接访问该 DOM 元素或组件实例。 示例: <template><div><input ref"inputField&quo…...

面对复杂的软件需求:5大关键策略!

面对软件需求来源和场景的复杂性&#xff0c;有效地管理和处理需求资料是确保项目成功的关键&#xff0c;能够提高需求理解的准确性&#xff0c;增强团队协作和沟通&#xff0c;降低项目风险&#xff0c;提高开发效率。反之&#xff0c;项目可能面临需求理解不准确、团队沟通不…...

使用Git进行版本控制的最佳实践

文章目录 Git简介基本概念仓库&#xff08;Repository&#xff09;提交&#xff08;Commit&#xff09;分支&#xff08;Branching&#xff09; 常用命令初始化仓库添加文件提交修改查看状态克隆仓库分支操作合并分支推送更改 最佳实践使用有意义的提交信息定期推送至远程仓库使…...

【入门1】顺序结构 - B2025 输出字符菱形

题目描述 用 * 构造一个对角线长 55 个字符&#xff0c;倾斜放置的菱形。 输入格式 没有输入要求。 输出格式 如样例所示。用 * 构成的菱形。 输入输出样例 输入 #1 输出 #1**** ********* <C> : #include<stdio.h>int main() {printf(" *\n ***\n**…...

C#DLL热加载|动态替换

我有一个项目 开始取数据和结束数据部分是一样的&#xff0c;但中间处理数据是根据客户需求来转换的 又要求增加一个客户数据转换 主程序是不能停下来的 所以这个项目转数据转换部分做成插件式 每个客户的数据转换都是一个项目 都是一个DLL 主程序里面定义好接口类或者抽象…...

数据库三大范式

目录 第一范式(1NF) 第二范式(2NF) 第三范式(3NF) Oracle三大范式是数据库设计中的规范化过程,旨在减少数据冗余、提高数据一致性和数据库性能。这三大范式包括第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。 第一范式(1NF) 数据库表的每一列都是不可分割…...

【linux】fdisk磁盘分区管理

介绍 fdisk是一个磁盘分区管理工具&#xff0c;可以用来创建、删除、修改和查看磁盘分区。 fdisk一般都是交互式使用&#xff0c;基础语法: fdisk /dev/sdd。进入交互窗口后&#xff0c;有一些选项&#xff0c;需要了解下&#xff1a; 选项含义n创建新分区p查看磁盘的分区情…...

asp.net core 入口 验证token,但有的接口要跳过验证

asp.net core 入口 验证token,但有的接口要跳过验证 在ASP.NET Core中&#xff0c;你可以使用中间件来验证token&#xff0c;并为特定的接口创建一个属性来标记是否跳过验证。以下是一个简化的例子&#xff1a; 创建一个自定义属性来标记是否跳过验证&#xff1a; public clas…...

[mysql]聚合函数GROUP BY和HAVING的使用和sql查询语句的底层执行逻辑

#GROUP BY的使用 还是先从需求出发,我们现在想求员工表里各个部门的平均工资,最高工资 SELECT department_id,AVG(salary) FROM employees GROUP BY department_id 我们就会知道它会把一样的id分组,没有部门的就会分为一组,我们也可以用其他字段来分组,我们想查询不同jb_id…...

从数据中台到数据飞轮:实现数据驱动的升级之路

从数据中台到数据飞轮&#xff1a;实现数据驱动的升级之路 随着数字化转型的推进&#xff0c;数据已经成为企业最重要的资产之一&#xff0c;企业普遍搭建了数据中台&#xff0c;用于整合、管理和共享数据&#xff1b;然而&#xff0c;近年来&#xff0c;数据中台的风潮逐渐减退…...

小记:SpringBoot中,@Alisa和@ApiModelProperty的区别

在 Spring Boot 中&#xff0c;Alias和ApiModelProperty 这两个注解用于不同的目的。 Alias Alias是一个用于定义别名的注解&#xff0c;通常用于 Bean 属性的别名功能&#xff0c;这样在使用某些框架&#xff08;如 JPA 或 Jackson&#xff09;时&#xff0c;可以将一个属性名…...

信捷 PLC C语言 定时器在FC中的使用

传统梯形图的定时器程序写起来简单&#xff0c;本文用C语言写定时器的使用。 定时器在c语言中使用&#xff0c;和普通梯形图中使用的区别之一是既有外部条件&#xff0c;也有内部条件。 1.建全局变量 2.建立FC POU 这个是功能POU程序。 这里的Enable是内部条件 3.调用包含定…...

k8s常用对象简介

Pod Pod 是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。 Pod 是一组&#xff08;一个或多个&#xff09; 容器&#xff1b; 这些容器共享存储、网络、以及怎样运行这些容器的声明。 Pod 中的内容总是并置&#xff08;colocated&#xff09;的并且一同调度&…...

【Kaggle | Pandas】练习2:索引,选择和分配

文章目录 数据总表1、读取列2、读取某列的第几行的值3、第一行数据4、读取列中前10个值5、读取索引标签为1 、 2 、 3 、 5和8的记录6、包含索引标签为0 、1 、10和100的记录的country 、province 、 region_1和region_2列7、 前 100 条记录的country和variety列8、包含Italy葡…...

【flask】 flask redis的使用

目的&#xff1a;如何使用在flask web项目中连接redis&#xff0c;并简单的使用 使用的库包&#xff1a;flask-redis pip install falsk-redis下面的写法是对项目代码进行模块化拆分的写法&#xff0c;在app.py中只进行对象的初始化等操作&#xff1b;exts.py中创建对象&…...

【Unity基础】Unity中的特殊文件夹详解

在Unity项目中&#xff0c;通常可以根据需要创建任意名称的文件夹来组织项目内容&#xff0c;但有一些特定的文件夹名称会触发Unity对其中资源和脚本的特殊处理。这篇文章将详细介绍这些特殊文件夹&#xff0c;帮助开发者在项目中合理地使用它们。 1. Assets 文件夹 Assets文…...

武汉做网站哪个好/seo优化一般包括哪些

inv[i](M-M/i)*inv[M%i]%M 转载于:https://www.cnblogs.com/autsky-jadek/p/7769055.html...

wordpress 访问权限/杭州百度推广

CentOS安装微软雅黑&#xff0c;解决drawImage中文乱码相关问题使用Graphics的drawString方法向图片上添加汉字时候&#xff0c;Windows是没问题的&#xff0c;在Linux上中文总是乱码&#xff0c;小方块&#xff0c;之前在网上看多很多说是因为Linux系统没有字体的原因&#xf…...

东莞微信网站制作/百度网站推广怎么收费

你喜欢做程序员吗&#xff1f;如果喜欢&#xff0c;那就做一辈子吧&#xff0c;甚至可以去创造一门语言 开心一笑 【甲&#xff1a;唉&#xff0c;我失败了。 乙&#xff1a;没关系&#xff0c;失败并不可耻。 甲&#xff1a;嗯&#xff0c;失败并不可耻。 乙&#xff1a;对…...

成都住建局官网登陆/上海seo招聘

现实的企业中&#xff0c;对于消息通信的应用一直都非常的火热&#xff0c;而且在J2EE的企业应用中扮演着特殊的角色&#xff0c;所以对于它研究是非常有必要的。 上篇博文深入浅出JMS(一)–JMS基本概念&#xff0c;我们介绍了消息通信的规范JMS&#xff0c;我们这篇博文介绍一…...

免费建设交友网站/微信营销和微博营销的本质区别

一、反向代理 反向代理&#xff0c;其实客户端对代理是无感知的&#xff0c;因为客户端不需要任何配置就可以访问&#xff0c;我们只需要将请求发送到反向代理服务器&#xff0c;由反向代理服务器去选择目标服务器获取数据后&#xff0c;在返 回给客户端&#xff0c;此时反向代…...

智慧团建官方网站电脑版/国内优秀网页设计赏析

域环境&#xff0c;俩DC&#xff0c;A主域控&#xff0c;B额外域控&#xff0c; 公司搬迁&#xff0c;把A主域控搬至外地&#xff0c;留B辅域控在本地&#xff0c;结果出现部分用户无法登陆的情况。 没办法&#xff0c;搬迁工作准备不足&#xff0c;只好在辅域控上做了出下操作…...