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

news2024/11/26 3:42:36

一、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 文件的内容逐页显示在控制台窗口中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/629881.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

<DB2>《DB2数据库健康检查》第3部分

《DB2数据库健康检查》第3部分 2 数据库对象检查2.12 检查是否需要对表和索引进行runstats(30天未作统计更新)2.13 检查表和索引是否需要重组2.14 查看表空间所在裸设备权限2.15 查看数据库备份进度 2 数据库对象检查 2.12 检查是否需要对表和索引进行runstats(30天未作统计更…

递归sql查询完整科目名称

已知表 科目编号 科目名称 1001 1001 现金 1002 1002 银行存款 10020100 0100 工商银行存款 100201000001 0001 工行重庆路支行 10020200 0200 建设银行存款 100202000001 0001 建行铁北支行 需要整理成 科目编号 科目称 科目全称 1001 现金 现金 1002 银行存款 银行存款 …

【OI学习笔记】基础算法-前缀和与差分算法

板块&#xff1a;基础算法、线性优化 难度&#xff1a;较易 前置知识&#xff1a;C基础语法 一、前缀和 1、定义 在一维空间中&#xff0c;对于一个数据总量为 n n n 的数组 a a a&#xff0c;有数据 a [ 1 ] , a [ 2 ] , a [ 3 ] , . . . , a [ n − 1 ] , a [ n ] a[1]…

计算数组中各元素的平方根numpy.sqrt()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 计算数组中各元素的平方根 numpy.sqrt() 选择题 以下程序的运行结果是? import numpy as np a np.array([1, 4, 9, -4]) print("【显示】a ", a) print("【执行】np.sqrt(a)&…

计网常见面试题

参考:小林coding 1.TCP/IP模型 2.说一下TCP的三次握手? 第一次握手:客户端向服务端发起建立连接请求,客户端会随机生成一个起始序列号x,客户端向服务端发送的字段中包含标志位SYN=1,序列号seq=x。第一次握手前客户端的状态为CLOSE,第一次握手后客户端的状态为SYN-SENT。…

Stable Diffusion 从听说到超神日记(从安装开始)

1.安装模型&#xff08;B站搜秋叶&#xff09; 看到下面界面就成功了&#xff01; 下载好模型打开主页&#xff01;点击右下角一键启动&#xff01; 首先弹出下面命令界面。 自动弹出一个网页界面&#xff08;地址是http://127.0.0.1:7860/?__themelight&#xff09;&#xf…

Zabbix(二)

所有实验的zabbix_agent客户端都是web1(192.168.29.142) 模板Template 模板是可以方便地应用于多个主机的一组实体。 实体可以是&#xff1a; 监控项触发器图表仪表盘低级别自动发现规则web场景 模板通常用于为特定服务或应用程序&#xff08;如Apache&#xff0c;MySQL&am…

第二章 模态命题:必然、可能

第二章 模态命题&#xff1a;必然、可能 第一节 模态命题-句式转换-逻辑转换 题-模态命题-句式转换-逻辑转换&#xff1a;①不一定不可能&#xff1b;②不一定可能不未必。 1.唐代韩愈在《师说》中指出&#xff1a;“孔子曰&#xff1a;三人行&#xff0c;则必有我师。是故…

MM32F3273G8P火龙果开发板MindSDK开发教程1 - 点亮LED

MM32F3273G8P火龙果开发版MindSDK开发教程1-点亮LED 1、登录官网下载对应的MindSDK固件 https://mindsdk.mindmotion.com.cn/&#xff0c;然后注册下载mm32F3270的固件即可。 下载完的文件为 plus-f3270_mdk.zip 解压后的文件路径如图&#xff1a; 2、新建LED工程 将下载…

ModNet抠图算法及摄像头实时抠图示例

目录 一、视频抠图采用绿幕的原因 1、摄像机成色原因 2、抠图效果原因 3、经济成本 二、抠图背景知识 1、Trimap 2、什么是抠图 3、抠图算法分类 三、Deep Image Matting算法 1、网络结构图 2、算法解读 &#xff08;1&#xff09;Encoder-Decoder阶段 &#xff0…

vue3 -- lottie-web使用

Lottie简介 官方介绍:Lottie是一个库,可以解析使用AE制作的动画(需要用bodymovie导出为json格式),支持web、ios、android、flutter和react native。在web端,lottie-web库可以解析导出的动画json文件,并将其以svg或者canvas的方式将动画绘制在我们的页面上. Lottie的优点 …

chatgpt赋能python:Python版本切换教程

Python版本切换教程 Python是一种高级编程语言&#xff0c;用于多种编程任务。但是&#xff0c;由于Python版本之间的不兼容性&#xff0c;有时候需要切换Python版本以满足特定的需求。在本文中&#xff0c;我们将介绍Python版本切换的方法&#xff0c;包括安装和使用多个版本…

机器学习 | 集成算法 | Bagging | Boosting | 概念向

&#x1f4da;Bagging和Boosting的概念 集成学习&#xff08;Ensemble Learning&#xff09;就是通过某种策略将多个模型集成起来&#xff0c;通过群体决策来提高决策准确率。为什么集成学习会好于单个学习器呢&#xff1f;原因可能有三&#xff1a; 训练样本可能无法选择出最好…

【ARMv8 SIMD和浮点指令编程】NEON 通用算术指令——杂项也不少

算术通用指令杂项包括以下指令: UABA、UABAL/UABAL2、UABD 和 UABDL/UABDL2。无符号向量差值绝对值累加和差值绝对值。 ABS 和 NEG向量绝对值和求反。 UMAX、UMIN、UPMAX、UPMIN、UMAXV 和 UMINV。无符号向量最大值,无符号向量最小值,无符号向量按对最大值,无符号向量按对最…

chatgpt赋能python:Python怎么分行输出?教程来了!

Python怎么分行输出&#xff1f;教程来了&#xff01; Python是一种解释型、面向对象、动态数据类型的高级编程语言。在Python中&#xff0c;分行输出是非常常见的操作&#xff0c;本文将介绍Python分行输出的不同方式以及使用的情况。 一、使用换行符 使用换行符是Python分…

python文字转语音(pyttsx3+flask)

提示&#xff1a;文章结尾有全部代码 目录 前言一、Flaskpyttsx基本使用Flask导入Flask框架配置基础环境初始Flask代码 pyttsx3库基本使用导入pyttsx3初始化pyttsx3文字转语音运行 二、具体实现1.引入库 总结 前言 本文主要讲解如何用python的pyttsx3库flask框架&#xff0c;手…

chatgpt赋能python:Python切换指南:让你无缝转换到Python

Python切换指南&#xff1a;让你无缝转换到Python Python是一个高级的编程语言&#xff0c;它可以用来进行各种各样的应用开发和数据分析。 Python有很多优点&#xff0c;比如它易于学习和使用&#xff0c;它是一个开源的语言&#xff0c;它具有广泛的库和框架。 如果你是处于…

Mysql数据库(六):基本的SELECT语句

基本的SELECT语句 前言一、SELECT...二、SELECT ... FROM三、列的别名四、去除重复行五、空值参与运算六、着重号七、查询常数八、显示表结构九、过滤数据 前言 本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识&#xff0c;有兴趣的小伙伴可以关注博主&#…

如何监控EMC VNX控制器的启动过程

这里我们要讨论的内容基本上适用于所有的EMC VNX中端存储系统&#xff0c;包含老的Clariion CX3&#xff0c;CX4&#xff0c;VNX1和VNX2&#xff0c;其实VNXe和Unity很多内容也是一样的。当然由于VNXe和Unity 操作系统的大的变化&#xff0c;差异也是比较大的。 导致EMC Clarr…

什么是M-LAG?为什么需要M-LAG?

M-LAG&#xff08;Multichassis Link Aggregation Group&#xff09;提供一种跨设备链路聚合的技术。M-LAG通过将两台接入交换机以同一个状态和用户侧设备或服务器进行跨设备的链路聚合&#xff0c;把链路的可靠性从单板级提升到设备级。同时&#xff0c;由于M-LAG设备可以单独…