.bat 脚本

.bat 脚本

.bat 脚本读取文本文件每一行的数据

.bat 脚本


echo off
setlocal enabledelayedexpansion
:: 末尾包含 \
set CurrentDir=%~dp0
echo CurrentDir=%CurrentDir%

:: 
set LineDatesPath=%CurrentDir%LineDatas.txt
for /F "usebackq delims=" %%A in ("%LineDatesPath%") do (


set LineDate=%%A
set UserDataPath=%appdata%\!LineDate!
echo "UserDataPath=!UserDataPath!"

if exist "!UserDataPath!" (
echo "!UserDataPath! exist"
) else (
echo "!UserDataPath! not exist"
)
echo ------------------------------------------------

)


:: 是否在脚本执行完,保留cmd界面。
if not defined IsPause (
set IsPause=1
)

if %IsPause%==1 (
pause
)

这段代码是一个批处理脚本,用于在Windows命令行中执行一系列操作。

首先,echo off命令关闭了命令行窗口中的命令回显,使得执行过程中不会显示每个命令的执行结果。

setlocal enabledelayedexpansion命令启用了延迟变量扩展,允许在代码块中使用!来获取变量的值。

set CurrentDir=%dp0命令将当前脚本文件的路径赋值给变量CurrentDir,%dp0表示当前脚本文件的驱动器和路径。

echo CurrentDir=%CurrentDir%命令输出变量CurrentDir的值。

set LineDatesPath=%CurrentDir%LineDatas.txt命令将LineDatas.txt文件的路径赋值给变量LineDatesPath,该文件位于当前脚本文件所在目录。

for /F “usebackq delims=” %%A in (“%LineDatesPath%”) do (是一个循环语句,用于逐行读取LineDatas.txt文件的内容,并将每一行赋值给变量%%A。

set LineDate=%%A命令将变量%%A的值赋值给变量LineDate。

echo "LineDate=!LineDate!"命令输出变量LineDate的值。

set UserDataPath=%appdata%!LineDate!命令将%appdata%环境变量和变量LineDate的值拼接成一个路径,并赋值给变量UserDataPath。

echo "UserDataPath=!UserDataPath!"命令输出变量UserDataPath的值。

if exist “!UserDataPath!” (是一个条件语句,判断变量UserDataPath所表示的路径是否存在。

如果路径存在,执行以下操作:

echo ------------------------------------------------命令输出分隔线。
echo “!UserDataPath!” exist命令输出路径存在的提示信息。
echo ------------------------------------------------命令输出分隔线。
if not defined IsPause (是一个条件语句,判断变量IsPause是否未定义。

如果IsPause未定义,执行以下操作:

set IsPause=1命令将变量IsPause赋值为1。
if %IsPause%==1 (是一个条件语句,判断变量IsPause的值是否为1。

如果IsPause的值为1,执行以下操作:

pause命令暂停脚本的执行,等待用户按下任意键继续。
整个脚本的作用是读取LineDatas.txt文件中的每一行,根据每一行的值构建一个路径,并判断该路径是否存在。如果存在,则输出相应的提示信息。最后根据IsPause变量的值决定是否暂停脚本的执行。

LineDatas.txt 文本文件

Line1
 Line2
  Line3
   Line4
Line5 
Line6  
Line7   
Line 8
Line  9
Line  10

执行脚本结果


F:\AppFile\PETool\.bat-ReadLineDatas>echo off
CurrentDir=F:\AppFile\PETool\.bat-ReadLineDatas\
"UserDataPath=C:\Users\ws\AppData\Roaming\Line1"
"C:\Users\ws\AppData\Roaming\Line1 not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\ Line2"
"C:\Users\ws\AppData\Roaming\ Line2 not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\  Line3"
"C:\Users\ws\AppData\Roaming\  Line3 not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\   Line4"
"C:\Users\ws\AppData\Roaming\   Line4 not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\Line5 "
"C:\Users\ws\AppData\Roaming\Line5  not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\Line6  "
"C:\Users\ws\AppData\Roaming\Line6   not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\Line7   "
"C:\Users\ws\AppData\Roaming\Line7    not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\Line 8"
"C:\Users\ws\AppData\Roaming\Line 8 not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\Line  9"
"C:\Users\ws\AppData\Roaming\Line  9 not exist"
------------------------------------------------
"UserDataPath=C:\Users\ws\AppData\Roaming\Line  10"
"C:\Users\ws\AppData\Roaming\Line  10 not exist"
------------------------------------------------
请按任意键继续. . .

相关推荐

  1. .bat 脚本

    2024-04-10 10:22:01       10 阅读
  2. bat脚本sqlserver 不同数据库同步

    2024-04-10 10:22:01       36 阅读
  3. Bat脚本专栏目录及索引

    2024-04-10 10:22:01       10 阅读
  4. Windows 下 bat 脚本调用 Git bash 环境 sh 脚本

    2024-04-10 10:22:01       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-10 10:22:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-10 10:22:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-10 10:22:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-10 10:22:01       18 阅读

热门阅读

  1. C#WPF仿苹果的漂亮的工具栏

    2024-04-10 10:22:01       11 阅读
  2. python-pytorch NLP中处理中文的步骤0.5.002

    2024-04-10 10:22:01       10 阅读
  3. 模板的全特化和局部特化

    2024-04-10 10:22:01       14 阅读
  4. 【python】 Django Web框架

    2024-04-10 10:22:01       18 阅读
  5. 客户端(client)fork 一个服务器(server)进程

    2024-04-10 10:22:01       14 阅读
  6. pandas习题 021:根据字符串包含情况查询 Series

    2024-04-10 10:22:01       14 阅读
  7. git reset 的三种模式

    2024-04-10 10:22:01       12 阅读
  8. arcgis10.x创建镶嵌数据集

    2024-04-10 10:22:01       11 阅读
  9. Pycharm中如何成功import cv2?

    2024-04-10 10:22:01       10 阅读
  10. 通过 Spark SQL 和 DataFrames 与外部数据源交互

    2024-04-10 10:22:01       12 阅读
  11. kafka客户端常用命令

    2024-04-10 10:22:01       11 阅读
  12. C#WPF给控件增加滚动条

    2024-04-10 10:22:01       10 阅读
  13. PDF Guru 通用型PDF文件处理工具

    2024-04-10 10:22:01       10 阅读
  14. OpenDevin介绍

    2024-04-10 10:22:01       12 阅读
  15. QT day2

    2024-04-10 10:22:01       13 阅读
  16. Acwing2024蓝桥杯DFS

    2024-04-10 10:22:01       10 阅读