【InsCode】InsCode打造的JavaSE与Linux命令互融的伪Linux文件系统小项目

news2024/9/25 19:17:48

🧑‍💻作者名称:DaenCode
🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。
😎人生感悟:尝尽人生百味,方知世间冷暖。
📖所属专栏:JavaSE项目


在这里插入图片描述


文章目录

  • 🌟系统介绍
  • 🌟部分功能运行
    • 重命名文件
    • 创建文件
    • 删除文件
  • 🌟知识一览
    • File类常用API
    • Linux文件系统命令
    • 数组用法
    • IO流基础
  • 🌟写在最后

🌟系统介绍

体验地址:JavaSE基础夯实之伪Linux文件系统
实现功能

  • 创建目录
  • 删除目录
  • 切换目录
  • 获取路径下目录及文件列表
  • 创建文件
  • 删除文件
  • 获取当前路径
  • 文件重命名

所需知识

  • File类常用API的用法
  • 异常捕获
  • 条件控制
  • 数组知识
  • 循环知识
  • IO流知识
  • Linux中的cd、mkdir、rm、touch、ls、pwd等等简单文件操作命令。

🌟部分功能运行

重命名文件

通过Linux命令的mv命令对当前new.txt重命名为daen.txt。
在这里插入图片描述

创建文件

通过linux中的touch命令创建test.txt。
在这里插入图片描述

删除文件

通过rm命令删除test.txt文件。
在这里插入图片描述

🌟知识一览

File类常用API

API描述
File(String pathname)通过给定的路径名字符串创建File对象。
File(File parent, String child)创建File对象,表示指定父目录和指定子目录下的文件或目录。
exists()测试文件或目录是否存在。
isDirectory()测试文件是否为目录。
mkdir()创建此抽象路径名指定的目录。
createNewFile()当指定抽象路径名表示的文件不存在时,创建一个新的空文件。
delete()删除此抽象路径名表示的文件或目录。
listFiles()返回目录下的所有文件和子目录的文件数组。
getAbsolutePath()返回此抽象路径名的绝对路径名字符串。
getCanonicalPath()返回此抽象路径名的规范路径名字符串。
getName()返回此抽象路径名表示的文件或目录的名称。
getParent()返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。
lastModified()返回文件或目录最后一次被修改的时间,以毫秒表示。
length()返回此抽象路径名表示的文件的长度(以字节为单位)。注意,如果此路径名表示的文件是一个目录,那么此方法返回值为0。
renameTo(File dest)将此抽象路径名重命名为指定的路径名。
isFile()测试此抽象路径名表示的文件是否是一个标准文件。

Linux文件系统命令

命令描述用法
ls列出目录内容ls [选项] [文件/目录]
cd切换目录cd [目录路径]
pwd显示当前工作目录pwd
mkdir创建新目录mkdir [目录名]
rmdir删除空目录rmdir [目录名]
cp复制文件或目录cp [选项] [源文件/目录] [目标文件/目录]
mv移动文件或目录,或者重命名mv [选项] [源文件/目录] [目标文件/目录]
rm删除文件或目录rm [选项] [文件/目录]
touch创建空文件或更新文件时间戳touch [文件]
cat查看文件内容cat [文件]
less逐页查看文件内容less [文件]
head显示文件开头部分head [选项] [文件]
tail显示文件结尾部分tail [选项] [文件]
ln创建链接ln [选项] [源文件] [链接文件]
find在文件系统中搜索文件find [路径] [选项] [表达式]
grep在文件中搜索匹配的文本grep [选项] [模式] [文件]
chmod修改文件或目录的权限chmod [选项] [权限] [文件/目录]
chown修改文件或目录的所有者chown [选项] [所有者] [文件/目录]
chgrp修改文件或目录的所属组chgrp [选项] [组] [文件/目录]
tar打包和解压文件tar [选项] [文件/目录]
gzip压缩文件gzip [选项] [文件]
unzip解压缩文件unzip [选项] [文件]

数组用法

操作描述示例
声明数组声明一个数组变量int[] numbers;
创建数组使用 new 关键字创建实际的数组对象numbers = new int[5];
初始化数组在创建数组时直接初始化数组元素的值int[] numbers = {1, 2, 3, 4, 5};
访问数组元素使用索引访问数组中的元素int thirdNumber = numbers[2];
修改数组元素通过索引修改数组中的元素值numbers[3] = 10;
获取数组长度使用 length 属性获取数组的长度int length = numbers.length;
遍历数组使用循环结构遍历数组中的所有元素for (int i = 0; i < numbers.length; i++) { System.out.println(numbers[i]); }

IO流基础

IO流类型描述示例
字节流操作字节数据的IO流类型- InputStream:用于从输入源读取字节数据
- OutputStream:用于向输出目标写入字节数据
- FileInputStream:从文件读取字节数据
- FileOutputStream:向文件写入字节数据
- BufferedInputStream:对其他字节流提供缓冲功能
字符流操作字符数据的IO流类型- Reader:用于从输入源读取字符数据
- Writer:用于向输出目标写入字符数据
- FileReader:从文件读取字符数据
- FileWriter:向文件写入字符数据
- BufferedReader:对其他字符流提供缓冲功能
- BufferedWriter:对其他字符流提供缓冲功能
缓冲流提供缓冲功能,可以提高IO性能- BufferedInputStream:对其他字节流提供缓冲功能
- BufferedOutputStream:对其他字节流提供缓冲功能
- BufferedReader:对其他字符流提供缓冲功能
- BufferedWriter:对其他字符流提供缓冲功能
对象流序列化和反序列化Java对象的IO流类型- ObjectInputStream:读取序列化对象
- ObjectOutputStream:写入序列化对象
转换流在字节流和字符流之间进行转换- InputStreamReader:将字节流转换为字符流
- OutputStreamWriter:将字符流转换为字节流
文件操作流用于操作文件的IO流类型,如创建、删除、重命名等操作- FileInputStream:从文件读取字节数据
- FileOutputStream:向文件写入字节数据
- FileReader:从文件读取字符数据
- FileWriter:向文件写入字符数据

🌟写在最后

最后感谢大家的阅读,对于小案例所需知识现在还没有系统的给大家整理,大家可以去网上找找相关资料。此外,也很乐意大家基于此案例完善更多的功能。有想法的可以在评论区讨论哦!


请添加图片描述

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

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

相关文章

初始Netty

文章目录 目录 文章目录 前言 一、netty 总结 前言 认识netty 一、netty Netty是一个基于Java的高性能网络应用框架&#xff0c;用于快速开发可扩展的网络服务器和客户端。它提供了易于使用的抽象API&#xff0c;使开发人员能够轻松地构建各种网络应用程序&#xff0c;包括…

U盘被分成了4个盘要怎么合并

原来是做为系统盘的&#xff0c;然后有一大概小半年没用&#xff0c;今天一看它自己分成了四个盘。 并且我一插入电脑就提示我格式化 其实根本不需要任何工具&#xff0c;操作前最好把U盘数据备份一下 首先把你的U盘插在电脑上 方法一 U盘被分成四个分区的原因有以下几种可…

Spring Cloud Alibaba-实现服务调用的负载均衡

1. 什么是负载均衡 通俗的讲&#xff0c; 负载均衡就是将负载&#xff08;工作任务&#xff0c;访问请求&#xff09;进行分摊到多个操作单元&#xff08;服务器,组件&#xff09;上进行执行。 根据负载均衡发生位置的不同,一般分为服务端负载均衡和客户端负载均衡。 服务端负…

一篇文章带你学好--->Git(超详细)

Git的详解与使用&#xff0c;一篇文章带你学习好git, ,Git是当前比较流行的版本控制工具 &#xff0c;它具有分布式的功能 &#xff0c;有助于我们在团队开发中提高开发效率 注意&#xff1a;敲黑板&#xff01;&#xff01;&#xff01; 带领你去使用git 配有图文解释 超详细 …

英文论文 | 学术写作 | 避免机翻 | 科研人

因为自己之前完成了几篇英文论文&#xff0c;最近在大修一篇&#xff0c;所以对英文论文写作这块有一些感悟&#xff0c;想跟大家分享下&#xff0c;肯定会有不恰当的地方&#xff0c;也希望大家能够在评论区指出&#xff0c;共同进步&#xff5e; 1 直接写英文&#xff0c;避免…

673. 最长递增子序列的个数

673. 最长递增子序列的个数 原题链接&#xff1a;完成情况&#xff1a;解题思路&#xff1a;方法一&#xff1a;动态规划方法二&#xff1a;贪心 前缀和 二分查找 参考代码&#xff1a;__673最长递增子序列的个数__动态规划__673最长递增子序列的个数__贪心_前缀和_二分查找…

如何在测试和预发环境下调试支付宝微信小程序的h5

微信 开发者工具调试 1、使用开发者工具打开 2、点击蜘蛛形状的小图标&#xff0c;就会出现调试页面 支付宝 真机调试 下载 1、工具下载&#xff1a;蚂蚁开发者工具&#xff08;支付宝小程序开发者工具&#xff09;&#xff1a; 蚂蚁开发者工具官方下载_蚂蚁开发者工具最…

港联证券|指数或进入磨底阶段 短期关注环保、煤炭等板块

磨底历来都不是一天能达到的&#xff0c;比方2018年的政策底到商场底&#xff0c;半途也阅历两个多月时间。当下政策底出现之后至今也有近一个月时间&#xff0c;并且下跌量能不断缩短&#xff0c;心情面也降至冰点&#xff0c;种种迹象阐明离真正商场底的构成已经不远了。此时…

【Java】树结构SQL数据的如何去实现搜索

这里写自定义目录标题 需要实现的效果前端需要的json格式&#xff1a;一定是一个完整的树结构错误错误的返回格式错误的返回格式实现的效果 正确正确的返回格式正确的展示画面 后端逻辑分析代码总览 数据库表结构 需要实现的效果 前端需要的json格式&#xff1a;一定是一个完整…

LinkedList的顶级理解

目录 1.LinkedList的介绍 LinkedList的结构 2.LinkedList的模拟实现 2.1创建双链表 2.2头插法 2.3尾插法 2.4任意位置插入 2.5查找关键字 2.6链表长度 2.7遍历链表 2.8删除第一次出现关键字为key的节点 2.9删除所有值为key的节点 2.10清空链表 2.11完整代码 3.…

PowerJob容器的使用(创建一个外置动态加载的任务)

1.使用容器的模板生成功能 2. 解压导入到IDEA中&#xff0c;下载依赖&#xff0c;添加处理器 3. 打包成jar 4. 上传项目到容器 5. 启动容器--部署jar 6. 复制一份上篇文章写的测试单机执行的任务实例&#xff0c;把执行配置修改从外置&#xff08;动态加载&#xff09; &…

scratch计算圆的面积和周长 2023年5月中国电子学会图形化编程 少儿编程 scratch编程等级考试四级真题和答案解析

目录 scratch计算圆的面积和周长 一、题目要求 1、准备工作 2、功能实现 二、案例分析

vue 简单实验 自定义组件 传参数 props

1.代码 <script src"https://unpkg.com/vuenext" rel"external nofollow" ></script> <div id"todo-list-app"><todo-item v-bind:todo"todo1"></todo-item> </div> <script> const ListR…

IIS短文件泄漏漏洞修改

升级netFramework至4.0以上版本 2.关闭Web服务扩展- ASP.NET&#xff08;不使用的可以关闭&#xff09; 3.CMD关闭NTFS 8.3文件格式的支持&#xff08;1代表关闭&#xff0c;0代表开启&#xff09; 不同系统关闭命令稍有区别&#xff0c;该功能默认是开启的&#xff0c;对于大多…

Rust之自动化测试(一):如何编写测试

开发环境 Windows 10Rust 1.71.1 VS Code 1.81.1 项目工程 这里继续沿用上次工程rust-demo 编写自动化测试 Edsger W. Dijkstra在他1972年的文章《谦逊的程序员》中说&#xff0c;“程序测试可以是一种非常有效的方法来显示错误的存在&#xff0c;但它对于显示它们的不存在…

用python从零开始做一个最简单的小说爬虫带GUI界面(2/3)

目录 前一章博客 前言 主函数的代码实现 逐行代码解析 获取链接 获取标题 获取网页源代码 获取各个文章的链接 函数的代码 导入库文件 获取文章的标题 获取文章的源代码 提取文章目录的各个文章的链接 总代码 下一章内容 前一章博客 用python从零开始做一个最简单…

软考高项(九)项目范围管理 ★重点集萃★

&#x1f451; 个人主页 &#x1f451; &#xff1a;&#x1f61c;&#x1f61c;&#x1f61c;Fish_Vast&#x1f61c;&#x1f61c;&#x1f61c; &#x1f41d; 个人格言 &#x1f41d; &#xff1a;&#x1f9d0;&#x1f9d0;&#x1f9d0;说到做到&#xff0c;言出必行&am…

这样才能玩转Linux内核之CPU篇

哈喽&#xff0c;我是子牙&#xff0c;一个很卷的硬核男人 深入研究计算机底层、Windows内核、Linux内核、Hotspot源码……聚焦做那些大家想学没地方学的课程。为了保证课程质量及教学效果&#xff0c;一年磨一剑&#xff0c;三年先后做了三个课程&#xff1a;手写JVM、手写OS及…

【AutoLayout案例04-游戏图片-按钮适配 Objective-C语言】

一、好,我们再看一个案例, 刚才,这个案例, 这么一个案例 这个案例,是什么意思呢, 这里给大家做一个3.5英寸、4.0英寸的屏幕适配, 因为我们这里图片,只有一个,就是4英寸的这么一个图片 什么意思呢,要求我们在3.5英寸的屏幕、和4英寸的屏幕的时候,都能正常显示这个图…

从零开始的Hadoop学习(一) | 大数据概念、特点、应用场景、发展前景

1. 大数据概念 大数据(Big Data)&#xff1a;指 无法在一定时间范围 内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的 海量、高增长率和多样化 的 信息资产。 大数据主要解决&#xff0c;海量…