Windows批处理 - 从源路径拷贝指定文件至目标位置

2024-01-30 06:10

本文主要是介绍Windows批处理 - 从源路径拷贝指定文件至目标位置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Makefile @TOC

Windows批处理 - 拷贝指定格式文件【附代码详解】

在工程实践中经常需要将指定文件拷贝至目标位置,由于每次手动拷贝效率太低,因此想将这个过程自动化,并将重要信息区分颜色显示,以下是具体实现过程和代码,希望可以帮助到别人。

目录

  1. 关键信息显示
  2. 变量设定
  3. 拷贝功能具体实现
  4. 显示拷贝完毕提示信息

1. 关键信息显示

@echo off
color f0
cls
title = FileCopy
echo ***********************************************************************************
echo *     Name: FileCopy.bat                                                          *
echo *     Author: Thor @Department A                                                  *
echo *     Version: V1.0                                                               *
echo *     Target: This script is written for copy target files (test1.txt and .jpg)   *
echo *             from a source directory to a target directory.                      *
echo ***********************************************************************************

@echo off - 关闭后面语句的回显
color f0 - 设置背景颜色为白色(f),前景颜色为黑色(0);
title = FileCopy - 在运行该bat文件后,窗口最上方显示的内容
后面几句是打印关键信息

2. 变量设定

2.1 字体颜色设定

set CGreeen=ESC[32m
Set CRed=ESC[31m
set CBlue=ESC[34m
Set CEnd=ESC[30m

.bat文件里面的ESC是这样的:
编辑界面

**请注意:这里的ESC是特殊字符,不是以单纯的字母输入的,请参考连接进行正确输入:显示彩色文字编辑方法

2.2 拷贝路径设定

设定拷贝的目标路径、txt文件源路径,jpg文件源路径。
定义变量时等号前后不要留空格

set destDir=C:\Users\ddd
set txt_srcDir=C:\Users\aaa
set jpg_srcDir=C:\Users\eee

2.3 打印设定信息

echo %CRed%Note:%CEnd% The database will be copied from a 'srcDir' to 'destDir'
echo       -txt_srcDir-  : %a2l_srcDir%
echo       -jpg_srcDir-  : %elf_srcDir%
echo       -destDir- : %destDir%
  • 这里‘Note’字体会变成红色

3. 拷贝功能

3.1 拷贝指定名称文件 - test1.txt

注释要另起一行写

rem * Push the working directory to a2l_srcDir and copy the test1.txt.
pushd %a2l_srcDir% 
for %%i in (test1.txt) do (echo %CBlue%%%i%CEnd%copy %%i %destDir% /y)
popd

3.2 拷贝指定类型文件 - *.jpg

rem * Push the working directory to elf_srcDir and copy the .jpg files.
pushd %jpg_srcDir% 
for /r %%i in (*.jpg) do (echo %CBlue%%%i%CEnd%copy %%i %destDir% /y)
popd
  • 文件名称将以蓝色显示
  • /r - 遍历当前文件夹和其子文件夹

4. 显示拷贝完成信息

echo %CGreeen%[OK]%CEnd% The Database is updated successfully!
echo press any key to exit.
pause>nul

上方代码块第一句会使[OK]以绿色显示。

脚本完整展示:

@echo off
color f0
cls
title = FileCopy
echo ***********************************************************************************
echo *     Name: FileCopy.bat                                                          *
echo *     Author: Thor @Department A                                                  *
echo *     Version: V1.0                                                               *
echo *     Target: This script is written for copy target files (test1.txt and .jpg)   *
echo *             from a source directory to a target directory.                      *
echo ***********************************************************************************rem * Set font color variable
set CGreeen=ESC[32m
Set CRed=ESC[31m
set CBlue=ESC[34m
Set CEnd=ESC[30mrem * Set source and target directory
set destDir=C:\Users\ddd
set txt_srcDir=C:\Users\aaa
set jpg_srcDir=C:\Users\eeerem * Print the set info
echo %CRed%Note:%CEnd% The database will be copied from a 'srcDir' to 'destDir'
echo       -txt_srcDir-  : %a2l_srcDir%
echo       -jpg_srcDir-  : %elf_srcDir%
echo       -destDir- : %destDir%rem * Push the working directory to a2l_srcDir and copy the test1.txt.
pushd %a2l_srcDir% 
for %%i in (test1.txt) do (echo %CBlue%%%i%CEnd%copy %%i %destDir% /y)
popdrem * Push the working directory to elf_srcDir and copy the .jpg files.
pushd %jpg_srcDir% 
for /r %%i in (*.jpg) do (echo %CBlue%%%i%CEnd%copy %%i %destDir% /y)
popdecho %CGreeen%[OK]%CEnd% The Database is updated successfully!
echo press any key to exit.
pause>nul

运行界面:(文章中更改了脚本中部分变量名和显示名称
运行界面

Reference

感谢以下连接中提及关于批处理的介绍,没有你们的分享,就不会有这个脚本的产生。
[1]: 批处理基础语法
[2]: 显示彩色文字编辑方法
[3]: 文字色号介绍

这篇关于Windows批处理 - 从源路径拷贝指定文件至目标位置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/659312

相关文章

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Windows的CMD窗口如何查看并杀死nginx进程

《Windows的CMD窗口如何查看并杀死nginx进程》:本文主要介绍Windows的CMD窗口如何查看并杀死nginx进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows的CMD窗口查看并杀死nginx进程开启nginx查看nginx进程停止nginx服务

VSCode设置python SDK路径的实现步骤

《VSCode设置pythonSDK路径的实现步骤》本文主要介绍了VSCode设置pythonSDK路径的实现步骤,包括命令面板切换、settings.json配置、环境变量及虚拟环境处理,具有一定... 目录一、通过命令面板快速切换(推荐方法)二、通过 settings.json 配置(项目级/全局)三、