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

Linux目录结构(与window目录结构对比+绝对路径和相对路径)

一、Linux目录结构

Linux目录结构是一个标准化的文件系统层次结构,非常有组织性并且易于管理。而与Windows

操作系统不同,Linux将所有文件和设备都组织在一个单一的根目录下。以下是Linux的标准目录结构:

  • /:根目录,包含了整个文件系统。

  • /bin:二进制可执行文件,例如cat、ls、ping等。

  • /boot:启动时使用的核心文件和引导加载程序。

  • /dev:设备文件,包括硬件设备和外部设备(如USB驱动器、打印机和调制解调器等)。

  • /etc:系统级配置文件,包括网络配置、用户账户、安全和服务启动脚本等。

  • /home:用户主目录,每个用户都有自己的子目录。

  • /lib和/lib64:共享库文件,支持/bin和/sbin中的命令。

  • /media:可移动介质,例如CD-ROM、闪存驱动器等。

  • /mnt:临时挂载点,系统管理员可以将其他文件系统挂载到此目录中。

  • /opt:第三方应用程序目录,通常在此处安装非默认软件。

  • /proc:虚拟文件系统,提供有关运行进程和系统状态的信息。

  • /root:超级用户(root)的主目录。

  • /run:文件系统中运行时数据的放置处,例如PID文件和套接字文件等。

  • /sbin:超级用户使用的系统二进制命令,用于管理系统和网络。

  • /srv:服务数据目录,例如Web服务器、FTP服务器等。

  • /sys:虚拟文件系统,包含了所有硬件设备、内核和驱动程序。

  • /tmp:临时文件目录,系统管理员和应用程序可以在此处创建和删除文件。

  • /usr:常规用户使用的应用程序和文件,包括/bin、/sbin、/lib和/usr/share等子目录。

  • /var:变量文件,包含日志文件、数据库文件、缓存文件以及其他一些变量数据。

与Linux不同,Windows操作系统采用了不同的目录结构:

  • C:\:Windows中安装的默认操作系统驱动器盘符,包含了整个文件系统。

  • C:\Program Files\:标准程序安装位置,包括与Windows系统预装程序无关的所有应用程序。

  • C:\Program Files (x86)\:32位Windows中的标准程序安装位置,使32位应用程序可以在64位Windows中运行。

  • C:\Windows\:Windows系统文件和系统级应用程序的主要目录。

  • C:\Users\:每个用户的个人文件夹和配置文件。

二、Windows目录结构

windows磁盘中用反斜杠(又称为右斜杠)\ 表示路径的分隔。在浏览器中用正斜杠/ 来表示路径的分隔。而Java中路径分隔使用正斜杠(又称为左斜杠) /,不推荐使用反斜杠\(反斜杠需要转义:两个反斜杠表示一个正杠)。

//在相对路径下创建Test.txt 文件
Filefile=newFile("Test.txt");
//在相对路径下 创建 newFile\\Test  目录
Filefile1=newFile("newFile\\Test");
//在相对路径下创建 newTestFile 文件夹
FilenewTestFile=newFile("newTestFile");

路径开头是斜杠以Java项目所在的磁盘为起始路径

File file1 = new File("/");
System.out.println("file1 的绝对路径为:" + file1.getAbsolutePath());
File file2 = new File("/new.txt");
System.out.println("file2 的绝对路径为:" + file2.getAbsolutePath());

  • 以直接文件名开头java的相对路径是以java所在项目的为起始点

  • 在Java中不存在…/ 只有 ./表示当前目录,…/表示上一级目录,如果输入…/Java程序会把…当作文件夹名

拼接路径建议使用File.separator,Windows都可以识别,而Linux只能识别 '/',使用File.separator就不用担心这个问题了。

三、绝对路径和相对路径

Linux cd路径 [root@myai jdk1.8.0_261]# cd bin/和[root@myai jdk1.8.0_261]# cd /bin 有什么区别?

cd bin/ 会将当前目录更改为 jdk1.8.0_261/bin/,也就是将当前工作目录切换到了 jdk1.8.0_261 目录下的 bin 子目录中。(其实cd bin/ 中的/加不加都行,cd bin 表示的也是同一个意思,或者还有一个写法,就是cd ./bin 也是同样的效果)

而 cd /bin 则会将当前目录更改为系统根目录下的 /bin 目录,也就是切换到了系统的可执行文件所在目录下。

两者的区别在于,前者是相对路径,后者是绝对路径。相对路径是相对于当前工作目录的路径,而绝对路径则是从系统根目录开始的完整路径。

/表示根目录

./表示文件所在的当前目录

../表示文件所在的上级目录

../../表示

这个放在Windows下也是一样的(Linux中是ls ,而Windows是dir)

当然,如果要进入D盘下的5.15文件夹(有绝对路径和相对路径两个方法)

这个错误提示可能是因为在 Windows 操作系统中,命令中的斜杠应该使用反斜杠来表示路径,而非正斜杠。此外,在切换磁盘时,应该使用冒号而非斜杠。因此,正确的命令应该是:cd /d D:\5.15 来切换到 D 盘下的 5.15 目录。

要想进一步查看这个5.15文件夹中的内容,可以继续查看,但是,我在5.15文件夹中只有一个jx-system的文件夹为什么会列出三个文件夹呢?

这是因为在 Windows 操作系统中,每个文件夹(或目录)都有两个隐藏的系统文件夹分别是 "." 和 ".."。其中 "." 表示当前文件夹,而 ".." 则表示当前文件夹的上一层目录,即父目录。这两个隐藏的系统文件夹会在执行 dir 命令时显示出来。因此,当进入 5.15 文件夹后,在执行 dir 命令时,会列出该目录下的三个文件夹,分别是当前目录(".")、父目录("..")和 jx-system 子目录。

当然,除了 dir 命令之外,还有一些命令可以查看文件和目录。以下是一些常用的命令:
  • ls (Linux, macOS) 或 dir (Windows):列出当前目录下的所有文件和子目录;

  • type (Windows) 或 cat (Linux, macOS):显示文本文件的内容;

  • more (Windows) 或 less (Linux, macOS):分页显示文本文件的内容;

  • head 和 tail (Linux, macOS):分别显示文件的前 N 行和后 N 行;

  • grep (Linux, macOS) 或 findstr (Windows):在文件中搜索指定的字符串或模式;

  • wc (Linux, macOS) 或 measure-object (Windows):统计文件的行数、单词数和字符数等信息。

这些命令的具体用法可以通过在命令行中输入 <command> /? 或 man <command> (其中 <command> 为命令名)来查看其帮助文档。

比如,type 命令需要指定要查看的文件名或路径,否则会出现“命令语法不正确”的错误提示。如果你想查看当前目录下的所有文件和子目录,应该使用 dir 命令。

如果你想查看当前目录下的某个文本文件的内容,可以在 type 命令后面加上文件名,并以回车键结束,例如:

D:\5.15\jx-system>type readme.txt

这将会显示 readme.txt 文件的内容。如果你希望将 readme.txt 的内容输出到控制台窗口中,可以使用 type 命令并将输出重定向到 more 命令中,例如:

D:\5.15\jx-system>type readme.txt | more

这将会把 readme.txt 文件的内容逐页显示在控制台窗口中。

相关文章:

Linux目录结构(与window目录结构对比+绝对路径和相对路径)

一、Linux目录结构 Linux目录结构是一个标准化的文件系统层次结构&#xff0c;非常有组织性并且易于管理。而与Windows 操作系统不同&#xff0c;Linux将所有文件和设备都组织在一个单一的根目录下。以下是Linux的标准目录结构&#xff1a; /&#xff1a;根目录&#xff0c;包含…...

投票活动小程序开发搭建

由于小程序是基于微信开发者工具编写的&#xff0c;因此我先介绍一下需要使用的工具和技术&#xff1a; - 微信开发者工具&#xff1a;用于开发、调试和发布小程序。 - 小程序云开发&#xff1a;用于存储数据和进行后端逻辑处理。 - uni-app框架&#xff1a;uni-app 是一个使…...

代码随想录day18

513.找树左下角的值 本题用前中后序都可以&#xff08;都是先遍历左再遍历右&#xff0c;保证最后一定是左侧的节点&#xff09;&#xff0c;因为没有中节点的处理逻辑&#xff0c;用全局变量记录最大深度&#xff0c;只要遇到叶子结点并且当前深度比最大深度大&#xff0c;就更…...

QT+OpenGL高级光照 Blinn-Phong和Gamma校正

QTOpenGL高级光照1 本篇完整工程见gitee:QtOpenGL 对应点的tag&#xff0c;由turbolove提供技术支持&#xff0c;您可以关注博主或者私信博主 Blinn-Phong 冯氏光照&#xff1a;视线与反射方向之间的夹角不小于90度&#xff0c;镜面光分量会变成0.0&#xff08;不是很合理&am…...

【Ubuntu系统内核更新与卸载】

【Ubuntu系统内核更新与卸载】 1. 前言2. 内核安装2.1 系统更新2.2 官网下载 3. 内核卸载3.1 需求分析3.2 卸载方法 1. 前言 我们在搭建环境时常常遇到内核版本不匹配的问题&#xff0c;需要我们安装新的内核版本&#xff1b;有时又会遇到在安装软件时报错boot空间已满无法安装…...

RL - 强化学习 马尔可夫奖励过程 (MRP) 的状态价值

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://blog.csdn.net/caroline_wendy/article/details/131084795 GitHub 源码: https://github.com/SpikeKing/Reinforcement-Learning-Algorithm 马尔可夫奖励过程 (MRP) 的状态价值是指在某…...

Mybatis之批处理流式查询

文章目录 1 批处理查询1.1 引言1.2 流式查询1.2.1 定义1.2.2 流式查询接口1.2.3 使用流式查询关闭问题1.2.3.1 SqlSessionFactory1.2.3.2 TransactionTemplate1.2.3.3 Transactional 注解 1.2.4 完整示例1.2.4.1 mapper接口和SQL1.2.4.2 Service操作 1.3 游标查询1.3.1 定义1.3…...

Spring架构篇--2.7.3 远程通信基础--Netty原理--bind实现端口的绑定

前言&#xff1a;在对ServerBootstrap 进行属性赋值之后&#xff0c;通过bind 方法完成端口的绑定&#xff0c;并开始在NioEventLoop中进行轮询进行事件的处理&#xff1b;本文主要探究ServersocketChannel 在netty 中是如何完成注册&#xff0c;以及端口的绑定 1 Nio selecto…...

【改进的多同步挤压变换】基于改进多同步挤压的高分辨率时频分析工具,用于分析非平稳信号(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

有关 python 切片的趣事

哈喽大家好&#xff0c;我是咸鱼 今天来讲一个我在实现 python 列表切片时遇到的趣事 在正式开始之前&#xff0c;我们先来了解一下切片&#xff08;slice&#xff09; 切片操作是访问序列&#xff08;列表、字符串…&#xff09;中元素的另一种方法&#xff0c;它可以访问一…...

ChatGPT 会带来失业潮吗?

&#xff08;永久免费&#xff0c;扫码加入&#xff09; 最近在翻知乎上的一些文章&#xff0c;很多都是跟ChatGPT有关的。因为本身是搞Python编程的&#xff0c;知乎推荐系统给我推荐了一篇廖雪峰老师的文章&#xff0c;觉得很有意思。 一共1119个赞&#xff0c;还是很厉害的&…...

如何对待工作中的失误

在日复一日的工作中&#xff0c;我们免不了会产生一些失误&#xff0c;会因此感到沮丧和失望。但如何正确地对待和处理这些失误才是最重要的&#xff0c;它直接影响到我们的工作表现和个人成长。一起来谈谈作为职场人的你时如何处理工作中的失误的吧&#xff01; 一、在面对失…...

微信小程序快速入门【一】

微信小程序快速入门【一】 文章目录 微信小程序快速入门【一】&#x1f468;‍&#x1f3eb;内容1&#xff1a;背景&#x1f468;‍⚖️内容2&#xff1a;准备工作&#x1f468;‍&#x1f4bb;内容3&#xff1a;新建一个小程序&#x1f349;文末推荐 &#x1f468;‍&#x1f…...

TiDB亿级数据亚秒响应查询集群部署

目录 1 集群部署1.1 环境要求1.1.1 操作系统建议配置1.1.2 服务器建议配置 1.2 环境准备1.3 安装TiUP1.3.1 什么是TiUP1.3.2 安装TiUP组件1.3.3 配置TiUP环境1.3.4 检查TiUP 工具是否安装1.3.5 安装 cluster 组件1.3.6 升级cluster组件 1.4 编辑部署文件1.4.1 常见的部署场景1.…...

并发——同步访问共享的可变数据

关键字 synchronized 可以保证在同一时刻&#xff0c;只有一个线程可以执行某一个方法&#xff0c;或者某一段代码块。许多程序员把同步的概念仅仅理解为一种互斥的方式。即&#xff0c;当一个对象被一个线程修改的时候&#xff0c;可以阻止另一个线程观察到内部不一致的状态。…...

Docker网络模型(九)禁用容器网络

禁用容器网络 如果你想完全禁用容器上的协议栈&#xff0c;你可以在启动容器时使用 --network none 标志。在容器内&#xff0c;只有回环设备被创建。下面的例子说明了这一点。 创建容器 $ docker run --rm -dit \--network none \--name no-net-alpine \alpine:latest \ash通…...

JavaScript 教程---互联网文档计划

学习目标&#xff1a; 每天记录一章笔记 学习内容&#xff1a; JavaScript 教程---互联网文档计划 笔记时间&#xff1a; 2023-6-5 --- 2023-6-11 学习产出&#xff1a; 1.入门篇 1、JavaScript 的核心语法包含部分 基本语法标准库宿主API 基本语法&#xff1a;比如操作符…...

做好功能测试需要的8项基本技能【点工进来】

功能测试是测试工程师的基础功&#xff0c;很多人功能测试还做不好&#xff0c;就想去做性能测试、自动化测试。很多人对功能测试的理解就是点点点&#xff0c;如何自己不用心去悟&#xff0c;去研究&#xff0c;那么你的职业生涯也就停留在点点点上了。在这里&#xff0c;我把…...

在弹出框内三个元素做水平显示

最终效果图要求是这样&#xff1a; js代码&#xff1a; // 显示弹出窗口 function showPopup(node) {var popup document.createElement(div);popup.className popup;var inputContainer1 document.createElement(div);/* inputContainer1.className input-container1; */…...

纠删码技术在vivo存储系统的演进【上篇】

作者&#xff1a;vivo 互联网服务器团队- Gong Bing 本文将学术界和工业界的纠删码技术的核心研究成果进行了相应的梳理&#xff0c;然后针对公司线上存储系统的纠删码进行分析&#xff0c;结合互联网企业通用的IDC资源、服务器资源、网络资源、业务特性进行分析对原有纠删码技…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我&#xff0c;后续持续新增专题博文&#xff0c;谢谢&#xff01;&#xff01;&#xff01;】 上一篇我们讲了&#xff1a; 这一篇我们开始讲&#xff1a; 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下&#xff1a; 一、场景操作步骤 操作步…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作

一、上下文切换 即使单核CPU也可以进行多线程执行代码&#xff0c;CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短&#xff0c;所以CPU会不断地切换线程执行&#xff0c;从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机&#xff08;无人驾驶飞行器&#xff0c;UAV&#xff09;技术的快速发展&#xff0c;其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统&#xff0c;无人机的“黑飞”&…...

虚拟电厂发展三大趋势:市场化、技术主导、车网互联

市场化&#xff1a;从政策驱动到多元盈利 政策全面赋能 2025年4月&#xff0c;国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》&#xff0c;首次明确虚拟电厂为“独立市场主体”&#xff0c;提出硬性目标&#xff1a;2027年全国调节能力≥2000万千瓦&#xff0…...

图解JavaScript原型:原型链及其分析 | JavaScript图解

​​ 忽略该图的细节&#xff08;如内存地址值没有用二进制&#xff09; 以下是对该图进一步的理解和总结 1. JS 对象概念的辨析 对象是什么&#xff1a;保存在堆中一块区域&#xff0c;同时在栈中有一块区域保存其在堆中的地址&#xff08;也就是我们通常说的该变量指向谁&…...

《Offer来了:Java面试核心知识点精讲》大纲

文章目录 一、《Offer来了:Java面试核心知识点精讲》的典型大纲框架Java基础并发编程JVM原理数据库与缓存分布式架构系统设计二、《Offer来了:Java面试核心知识点精讲(原理篇)》技术文章大纲核心主题:Java基础原理与面试高频考点Java虚拟机(JVM)原理Java并发编程原理Jav…...

C++--string的模拟实现

一,引言 string的模拟实现是只对string对象中给的主要功能经行模拟实现&#xff0c;其目的是加强对string的底层了解&#xff0c;以便于在以后的学习或者工作中更加熟练的使用string。本文中的代码仅供参考并不唯一。 二,默认成员函数 string主要有三个成员变量&#xff0c;…...

GraphRAG优化新思路-开源的ROGRAG框架

目前的如微软开源的GraphRAG的工作流程都较为复杂&#xff0c;难以孤立地评估各个组件的贡献&#xff0c;传统的检索方法在处理复杂推理任务时可能不够有效&#xff0c;特别是在需要理解实体间关系或多跳知识的情况下。先说结论&#xff0c;看完后感觉这个框架性能上不会比Grap…...