文件操作|学习笔记

简介: 快速学习文件操作。

开发者学堂课程【GO 语言核心编程-基础语法、数组、切片、Map:文件操作】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/625/detail/9509


文件操作

 

内容介绍:

一、 新建或追加内容

二、 复制、移动或删除文件

 

一、 新建或追加内容

案例演示:

 image.png

假设目前在 d:\test 200的目录下,要在 abc100的目录下创建一个 abc.txt 文件。

输入 echo hello > d:\test100\abc100\abc.txt 即可。abc.txt 文件的内容就是 hello。

也可以先移动到 abc100 的目录之下,然后再创建 abc.txt。先输入cd d:\test100\abc100。

再输入echo atguigu > abc2.txt 即可创建,文件内容为 atguigu。

 

二、 复制移动或删除文件

1. 复制文件

拷贝时既可使用原来的文件名,也能重新指定文件名。

COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B]

[+ source [/A | /B] [+ ...]] [destination [/A | /B]]

Source指定要复制的文件。

/A表示一个 ASCII 文本文件。

/B表示一个二进位文件。

/D允许解密要创建的目标文件

destination为新文件指定目录和/或文件名。

/V验证新文件写入是否正确。

/N复制带有非 8dot3 名称的文件时,尽可能使用短文件名。

/Y不使用确认是否要覆盖现有目标文件的提示。

/-Y使用确认是否要覆盖现有目标文件的提示。

/Z用可重新启动模式复制已联网的文件。

/L如果源是符号链接,请将链接复制到目标而不是源链接指向的实际文件。

命令行开关 /Y 可以在 COPYCMD 环境变量中预先设定。

这可能会被命令行上的 /-Y 替代。除非 COPY命令是在一个批处理脚本中执行的,默认值应为在覆盖时进行提示。

要附加文件,请为目标指定一个文件,为源指定数个文件(用通配符或 file1+file2+file3 格式)。

案例演示:

欲将 abc.txt 拷贝到 test200 的路径下。则输入 copy abc.txt d:\test200。也可以指定文件夹名。即在要拷贝到的目录后加一个文件名。

2. 移动文件

拷贝后原先的文件还在,移动就不会留下原文件。

要移动至少一个文件:

MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination

要重命名一个目录:

MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2

[drive:][path]filename1 指定您想移动的文件位置和名称。

Destination指定文件的新位置。目标可包含一个驱动器号和冒号、一个目录名或组合。

如果只移动一个文件并在移动时将其重命名,您还可以包括文件名。

[drive:][path]dirname1  指定要重命名的目录。

dirname2指定目录的新名称。

/Y取消确认覆盖一个现有目标文件的提示。

/-Y对确认覆盖一个现有目标文件发出提示。

命令行开关 /Y 可以出现在 COPYCMD 环境变量中。这可以用命令行上的 /-Y 替代。

默认值是,除非 MOVE 命令是从一个批脚本内执行的,覆盖时都发出提示。

案例演示:

将 abc.txt 移动到 f 盘下。即输入 move abc.txt f:\。

3. 删除文件

DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names

ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names

names指定一个或多个文件或者目录列表。多个文件(目录)中间用空格隔开。通配符可用来删除多个文件。 如果指定了一个目录,该目录中的所有文件都会被删除。

/P删除每一个文件之前提示确认。默认的选项。

/F强制删除只读文件。

/S删除所有子目录中的指定的文件。

/Q安静模式。删除全局通配符时,不要求确认

/A根据属性选择要删除的文件

属性

R  只读文件                    

S  系统文件

H  隐藏文件

A  存档文件

I  无内容索引文件

L  重分析点

-  表示“否”的前缀

如果命令扩展被启用,DEL 和 ERASE 更改如下:

/S 开关的显示句法会颠倒,即只显示已经删除的文件,而不显示找不到的文件。

案例演示:

将 abc.txt 删除。即输入 del abc.txt。

如果要删除目录下的所有 txt 文件。即将 abc 改为“*”。就代表所有类型为 txt 的文件。

相关文章
|
8月前
|
机器学习/深度学习 运维 算法
从算法菜鸟到挖掘达人:数据挖掘的算法大冒险
从算法菜鸟到挖掘达人:数据挖掘的算法大冒险
293 18
|
6月前
|
API UED 开发者
Harmony OS Next玩转多层级手势事件:当组件遇上“套娃”,触摸该怎么分家?
在HarmonyOS开发中,处理多层级手势事件是一项挑战,尤其在“组件套组件”的复杂布局下。本文深入探讨了触摸事件的基础原理、父子组件间的手势竞争规则以及如何通过`responseRegion`和`hitTestBehavior`等属性自定义触摸分发逻辑。同时介绍了`.gesture()`、`.priorityGesture()`和`.parallelGesture()`三种手势绑定方法,帮助开发者灵活调整手势优先级。掌握这些技巧,可精准控制复杂交互中的触摸行为,提升用户体验。
|
9月前
|
人工智能 开发框架 安全
龙蜥 2024 年度“最佳合作伙伴”揭晓!申威、AMD 等多家新晋贡献厂商实力登榜
当前,龙蜥社区已实现和操作系统全产业链伙伴从底层硬件支持到上层应用服务优化的全方位深度合作。
|
9月前
|
运维 安全 持续交付
Websoft9 运维面板有多好用,试了才知道
Websoft9 运维面板以开源应用全生命周期管理为核心,内置 ​200+ 应用模板,支持 WordPress、Magento 等一键部署,10 分钟完成复杂环境搭建,对比宝塔节省 80% 手动配置时间。其基于 ​GitOps 架构,实现代码与数据分离管理,支持持续部署与回滚。安全层面提供全链路防护,覆盖漏洞扫描、WAF 防御及一键修复,资源占用仅为 cPanel 的 1/3,适配多云及 Docker/K8s 生态。相较于宝塔,Websoft9 在开源适配深度、自动化能力及轻量化设计上优势显著,尤其适合企业级 SaaS 与开发者。
284 0
|
前端开发 JavaScript
原生撸移动端顶部滚动菜单栏,实现可滚动控制滚动边界动态样式
本文介绍了如何使用原生HTML、CSS和JavaScript创建一个移动端可滚动的顶部菜单栏。文章提供了详细的HTML结构、CSS样式和JavaScript代码,实现了菜单项的横向滚动、边界控制和动态样式变化。同时,还展示了如何通过触摸事件监听来控制菜单项的滚动和激活状态。
316 2
原生撸移动端顶部滚动菜单栏,实现可滚动控制滚动边界动态样式
|
Ubuntu Linux
Linux实践|设置静态 IP 地址
Linux实践|设置静态 IP 地址
Linux实践|设置静态 IP 地址
|
人工智能 自然语言处理 文字识别
几步轻松定制私人AI助手
这两年大模型的发展持续火热,以至于许多资本和学者认为AI出现了泡沫,根本原因还是因为大模型目前还没有出现能够结合行业切实落地的应用。我才不关注泡沫不泡沫呢,我只关注大模型能给我带来哪些帮助即可。大模型离用户最近的助力方式就是AI智能体。
几步轻松定制私人AI助手
|
JavaScript 前端开发 API
【前端基础篇】JavaScript之jQuery介绍
【前端基础篇】JavaScript之jQuery介绍
688 0
|
搜索推荐 安全 大数据
量子科技在教育领域有何应用?
【8月更文挑战第4天】量子科技在教育领域有何应用?
345 2
|
开发者 Python
Python模块化编程实践指南
【7月更文挑战第20天】在Python开发中,模块化编程是一种重要的方法,它能够提高代码的可维护性、可读性和可重用性。本文将介绍Python模块化编程的基本概念,并通过一些实例演示如何有效地使用模块化编程。