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

第3章 文件类型和目录结构

第3章 文件类型和目录结构

在这这章之前我们先学习一个前面使用过的命令 ls

查看文件ls

命令格式:

 [root@bogon redhat]# ls --helpUsage: ls [OPTION]... [FILE]...List information about the FILEs (the current directory by default).Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.​

ls 命令是 List 的简写,它的作用是显示指定路径下的所有的文件信息。它常用的选项有如下:

 -a 用于显示所有文件包括隐藏文件及目录-d 显示目录本身而不是目录下的内容-l 以长列表的方式来显示内容-h 以人的读取习惯显示内容-r 递归显示

使用命令:

1)显示根下所有内容

 [root@bogon redhat]# ls //     它是 linux 系统的根目录,所有的文件或目录都是挂载到它之下的afsboot  它是系统启动时所需要的文件etc   它是系统中所有的配置文件所在目录,它是非常重要的一个目录,这个目录大家一定要记住,后续学到高级课程时就需要修改它里面的文件lib   库文件,在系统运行过程中所需要的一个库文件media 媒体,它是用户挂载的,一般我们光盘就可以挂载到它下面opt   它是第三方软件安装目录root  它是 root 用户有家目录sbin  超级用户可以执行的命令所在目录sys   这是用户存储虚拟的文件路径usr   unix software resource 它是软件资源所在目录bin   普通用户可以执行的命令所在目录dev   设备文件所在目录home  它是普通用户所在的家目录lib64 它也是库文件所在目录mnt   它是挂载目录proc  进程所在目录run   程序运行时相关的文件所在路径srv   网络服务数据tmp   运行程序时产生的临时文件,在这个目录中不要存储重要信息,因为它可能会被系统删除var   用于存放一些变化的数据,例如日志

-a 选项

[root@bogon redhat]# ls -a /
.   afs            bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
..  .bash_history  boot  etc  lib   media  opt  root  sbin  sys  usr

当指定了 -a 选项时,发现多了一些内容:

.	它表示当前目录
..	它表示上一级目录
.bash_history	表示它是一个隐藏文件或目录

注意:

  1. 在 linux 中以点开头的文件或目录是隐藏文件或目录

  2. 任何一个目录,当执行了 ls 命令后,都可以看到 . 和 ..

-d 选择

只显示目录本身,而不会显示目录内容

[root@bogon redhat]# ls /usr
bin  games  include  lib  lib64  libexec  local  sbin  share  src  tmp
[root@bogon redhat]# ls -d /usr
/usr

-l 选项

它是以长列表的方式来显示内容

[root@bogon redhat]# ls /usr
bin  games  include  lib  lib64  libexec  local  sbin  share  src  tmp
# 下面是带了 -l 选项的
[root@bogon redhat]# ls -l /usr
total 240
dr-xr-xr-x.   2 root root 45056 Oct 15 19:40 bin
drwxr-xr-x.   2 root root     6 Aug 10  2021 games
drwxr-xr-x.   3 root root    23 Oct 15 19:38 include
dr-xr-xr-x.  38 root root  4096 Oct 15 19:42 lib
dr-xr-xr-x. 123 root root 73728 Oct 15 19:42 lib64
drwxr-xr-x.  46 root root 12288 Oct 15 19:40 libexec
drwxr-xr-x.  12 root root   131 Oct 15 19:36 local
dr-xr-xr-x.   2 root root 20480 Oct 15 19:40 sbin
drwxr-xr-x. 213 root root  8192 Oct 15 19:40 share
drwxr-xr-x.   4 root root    34 Oct 15 19:36 src
lrwxrwxrwx.   1 root root    10 Aug 10  2021 tmp -> ../var/tmp
[root@bogon redhat]# 

内容格式说明:

d		r-xr-xr-x.		2		root		root		45056		Oct 15 19:40		bin
1		2				3		4			5			6			7					81. 文件的类型
2. 文件的操作权限
3. 硬连接数
4. 文件所有者(创建文件的人)
5. 文件所发属组名称
6. 文件大小,单位为字节
7. 文件最后一次修改时间
8. 文件名称

在 Linux 中一切皆文件。

-h 选项

[root@bogon redhat]# ls -l -h /usr
total 240K
dr-xr-xr-x.   2 root root  44K Oct 15 19:40 bin
drwxr-xr-x.   2 root root    6 Aug 10  2021 games
drwxr-xr-x.   3 root root   23 Oct 15 19:38 include
dr-xr-xr-x.  38 root root 4.0K Oct 15 19:42 lib
dr-xr-xr-x. 123 root root  72K Oct 15 19:42 lib64
drwxr-xr-x.  46 root root  12K Oct 15 19:40 libexec
drwxr-xr-x.  12 root root  131 Oct 15 19:36 local
dr-xr-xr-x.   2 root root  20K Oct 15 19:40 sbin
drwxr-xr-x. 213 root root 8.0K Oct 15 19:40 share
drwxr-xr-x.   4 root root   34 Oct 15 19:36 src
lrwxrwxrwx.   1 root root   10 Aug 10  2021 tmp -> ../var/tmp# 我们可以在命令后面跟多个选项,多个选项之间用空格分隔,当然也可以把选项进行组全,例如:
[root@bogon redhat]# ls -lh /usr
total 240K
dr-xr-xr-x.   2 root root  44K Oct 15 19:40 bin
drwxr-xr-x.   2 root root    6 Aug 10  2021 games
drwxr-xr-x.   3 root root   23 Oct 15 19:38 include
dr-xr-xr-x.  38 root root 4.0K Oct 15 19:42 lib
dr-xr-xr-x. 123 root root  72K Oct 15 19:42 lib64
drwxr-xr-x.  46 root root  12K Oct 15 19:40 libexec
drwxr-xr-x.  12 root root  131 Oct 15 19:36 local
dr-xr-xr-x.   2 root root  20K Oct 15 19:40 sbin
drwxr-xr-x. 213 root root 8.0K Oct 15 19:40 share
drwxr-xr-x.   4 root root   34 Oct 15 19:36 src
lrwxrwxrwx.   1 root root   10 Aug 10  2021 tmp -> ../var/tmp

文件类型

在 linux 中一共有 七 种文件类,分别是如下:

-	表示普通文件
d	表示目录
l	链接文件(分为软链接和硬链接)
c	表示字符设备文件
b	块设备文件
p	管道文件
s	套接字文件
[root@bogon ~]# ll /usr/bin/ls
-rwxr-xr-x. 1 root root 140760 Jan  6  2023 /usr/bin/ls
[root@bogon ~]# ll -d /root
dr-xr-x---. 14 root root 4096 Oct 29 16:29 /root
[root@bogon ~]# ll /dev/tty
crw-rw-rw-. 1 root tty 5, 0 Oct 29 16:29 /dev/tty
[root@bogon ~]# ll /dev/sr0
brw-rw----+ 1 root cdrom 11, 0 Oct 29 16:29 /dev/sr0
[root@bogon ~]# ll /usr/bin/yum
lrwxrwxrwx. 1 root root 5 Mar 15  2023 /usr/bin/yum -> dnf-3

路径切换cd

这个命令的作用是用来切换用户的工作路径。cd 是 change directory 的简写。

它的语法格式:

[root@bogon ~]# cd --help
cd: cd [-L|[-P [-e]] [-@]] [dir]Change the shell working directory.Change the current directory to DIR.  The default DIR is the value of theHOME shell variable.

命令使用:

[root@bogon ~]# pwd
/root
[root@bogon ~]# cd /var/log
[root@bogon log]# pwd
/var/log
[root@bogon log]# cd ..			# 切换到上级目录
[root@bogon var]# pwd
/var
[root@bogon var]# cd /usr/local/etc
[root@bogon etc]# ls
[root@bogon etc]# pwd
/usr/local/etc
# 希望切换到 /usr 目录下
[root@bogon etc]# cd ../../
[root@bogon usr]# pwd
/usr
[root@bogon usr]# cd /usr# cd - 会在最近两目录之间来回切换
[root@bogon home]# cd -
/root
[root@bogon ~]# cd -
/home
[root@bogon home]# cd -
/root
[root@bogon ~]# cd -
/home# 如果只写 cd 不带参数表示切换到 root 用户的家目录
[root@bogon home]# cd
[root@bogon ~]# # cd ~ 也会切换到当前用户所在的家目录
[root@bogon home]# cd ~
[root@bogon ~]# 

相关文章:

第3章 文件类型和目录结构

第3章 文件类型和目录结构 在这这章之前我们先学习一个前面使用过的命令 ls 查看文件ls 命令格式: [rootbogon redhat]# ls --helpUsage: ls [OPTION]... [FILE]...List information about the FILEs (the current directory by default).Sort entries alphabeti…...

前端构建变更:从 webpack 换 vite

现状 这里以一个 op (内部运营管理用)项目为例,从 webpack 构建改为 vite 构建,提高本地开发效率,顺便也加深对 webpack 、 vite 的了解。 vite 是前端构建工具,使用 一系列预配置进行rollup 打包&#x…...

记录基于Vue.js的移动端Tree树形组件

目录 一、Liquor Tree 入门 : Development Component Options 组件选项 Structure 结构 二、vue-treeselect Introduction 介绍 Getting Started 入门 Vue 树形选择器( Vue tree select )组件在搭建 Vue 的 app 中特别常用,Vue tree select 除了简单的树形结构…...

Vue中嵌入原生HTML页面的方法

在Vue中嵌入原生HTML页面通常可以通过组件或页面的方式来完成。下面将详细说明如何通过组件方式实现这个功能,并提供一个简单的代码示例。 方法说明 创建原生HTML页面:首先,你需要创建一个原生HTML页面,这个页面可以是一个独立的…...

17 # 类型检查机制:类型保护

例子: enum Type {Strong,Week }class Java {helloJava(){console.log(hello Java);} }class JavaScript {helloJavaScript(){console.log(hello JavaScript);} }function getLanguage(type: Type){let lang type Type.Strong ? new Java() : new JavaScript();…...

Vulnhub-RIPPER: 1渗透

文章目录 一、前言1、靶机ip配置2、渗透目标3、渗透概括 开始实战一、信息获取二、rips的使用三、获取密码文件四、日志审查五、提权 一、前言 由于在做靶机的时候,涉及到的渗透思路是非常的广泛,所以在写文章的时候都是挑重点来写,尽量的不饶…...

幻兽帕鲁自建服务器:可以使用香港服务器吗?

随着网络技术的发展,越来越多的游戏爱好者选择通过自建服务器来享受游戏的乐趣。幻兽帕鲁作为一款备受喜爱的游戏,也有不少玩家想要自建服务器进行游戏。而在选择服务器地点时,很多玩家会想到使用香港服务器。那么,是否可以使用香…...

Revisiting image pyramid structure for high resolution salient object detection

accv2022的技术,在我测评的数据集上确实要明显好于basnet,rembg等一众方法。 1.Introduction 使用LR数据集训练的方法通过调整输入尺寸可以在HR图像上产生不错的结果。本文主要关注仅使用LR数据集进行训练以产生高质量的HR预测。HR的有效感受野ERFs和LR…...

中移(苏州)软件技术有限公司面试问题与解答(7)—— kmalloc与vmalloc的区别与联系及使用场景

接前一篇文章:中移(苏州)软件技术有限公司面试问题与解答(0)—— 面试感悟与问题记录 本文参考以下文章: kmalloc与vmalloc如何选择 Vmalloc与kmalloc的区别 特此致谢! 本文对于中移&#xf…...

微服务-微服务Alibaba-Nacos 源码分析 (源码流程图)

客户端流程 客户端心跳与实例往服务端注册...

后端性能优化的一些总结

目录 1、背景 2、优化实现 2.1查询数据表速度慢 2.2调别人接口速度慢 2.3导入速度慢、 2.4导出速度慢的做出介绍 2.5统计功能速度慢 3、总结 1、背景 系统上线后,被用户反应系统很多功能响应时长很慢。用户页面影响速度有要求,下面针对查询数据表…...

【升级openssl1.1.1t报错libssl.so.1.1: cannot open shared object file】

升级openssl报错: openssl vesion openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory 编译安装openssl1.1.1t当执行openssl version的时候,报上述错误,将编译到的…...

CVE-2024-0352 likeshop v2.5.7文件上传漏洞分析

本次的漏洞研究基于thinkPHP开发开的一款项目..... 漏洞描述 Likeshop是Likeshop开源的一个社交商务策略的完整解决方案,开源免费版基于thinkPHP开发。Likeshop 2.5.7.20210311及之前版本存在代码问题漏洞,该漏洞源于文件server/application/api/contr…...

JAVA处理类似饼状图占比和100%问题,采用最大余额法

前言: 在做数据统计报表的时候,有两种方式解决占比总和达不到100%或者超过100%问题。 第一种方式是前端echart图自带的算分框架。 第二种方式是java后端取处理这个问题。 现存问题: 前端不通过饼状图的方式去展示各个分类的占比累加和为100%问…...

MATLAB矩阵的操作(第一部分)

矩阵的基本知识 矩阵概念 矩阵(Matrix)在数学中是一个由复数或实数组成的矩形阵列,其元素按照行和列排列。矩阵的定义可以形式化地描述为: 一个 m 行 n 列的矩阵是一个有序的数表,其中包含 m*n 个数,可以…...

全面掌握Django的web框架Django Rest_Framework(一)

文章目录 Django Rest_Framework1. DRF介绍2.DRF特点3.环境安装与配置(1)DRF需要以下依赖(2)创建django项目 4.序列化器的使用(1)创建序列化器 5. 反序列化器使用 Django Rest_Framework 1. DRF介绍 Djan…...

AOP+Redisson 延时队列,实现缓存延时双删策略

一、缓存延时双删 关于缓存和数据库中的数据保持一致有很多种方案,但不管是单独在修改数据库之前,还是之后去删除缓存都会有一定的风险导致数据不一致。而延迟双删是一种相对简单并且收益比较高的实现最终一致性的方式,即在删除缓存之后&…...

Hive中left join 中的where 和 on的区别

目录 一、知识点 二、测试验证 三、引申 一、知识点 left join中关于where和on条件的知识点: 多表left join 是会生成一张临时表。on后面: 一般是对left join 的右表进行条件过滤,会返回左表中的所有行,而右表中没有匹配上的数…...

LaTeX教程(001)-LaTeX文档结构(01)

LaTeX教程(001)- LaTeX \LaTeX LATE​X文档结构(01) 说在前面 这是我本人学习《The LaTeX Companion》第三版的笔记,但并不是翻译。 书籍的第一章对 LaTeX \LaTeX LATE​X及其历史进行了相当长的介绍,这是几乎每一本关于 LaTeX \LaTeX LATE​X的书都会…...

SV-7041T 多媒体教学广播IP网络有源音箱

SV-7041T是深圳锐科达电子有限公司的一款2.0声道壁挂式网络有源音箱,具有10/100M以太网接口,可将网络音源通过自带的功放和喇叭输出播放,可达到功率30W。同时它可以外接一个30W的无源副音箱,用在面积较大的场所。5寸进口全频低音喇…...

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

生成 Git SSH 证书

🔑 1. ​​生成 SSH 密钥对​​ 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​: -t rsa&#x…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

Map相关知识

数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败,具体原因是客户端发送了密码认证请求,但Redis服务器未设置密码 1.为Redis设置密码(匹配客户端配置) 步骤: 1).修…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...

【Linux】自动化构建-Make/Makefile

前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...

Python爬虫实战:研究Restkit库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的有价值数据。如何高效地采集这些数据并将其应用于实际业务中,成为了许多企业和开发者关注的焦点。网络爬虫技术作为一种自动化的数据采集工具,可以帮助我们从网页中提取所需的信息。而 RESTful API …...