批处理脚本,设置变量名openfile等于文件P445.a2l,变量import等于文件夹path,读取当前目录下变量opfile和import的绝对路经打印出来
时间: 2024-02-25 16:51:16 浏览: 65
以下是批处理脚本的代码:
```
set openfile=P445.a2l
set import=path
setlocal enabledelayedexpansion
for %%i in ("%openfile%") do set "openfile_path=%%~fi"
for %%i in ("%import%") do set "import_path=%%~fi"
echo Openfile path: !openfile_path!
echo Import path: !import_path!
```
这个脚本首先设置了变量`openfile`和`import`,然后使用`setlocal enabledelayedexpansion`开启了延迟环境变量扩展(Delayed Environment Variable Expansion)。
接下来,使用`for`循环以双引号括起来的变量名作为参数遍历文件路径,然后使用`set`命令将文件路径存储在新的变量`*_path`中。其中`%%~fi`表示去掉双引号后的文件路径。
最后,使用`echo`命令打印出`openfile_path`和`import_path`的值。需要注意的是,在使用延迟环境变量扩展时,需要使用`!`而不是`%`来引用变量。
相关问题
批处理脚本设置变量file等于P445.a2l,在当前文件夹下打印变量file的绝对路径
以下是批处理脚本的代码:
```
set file=P445.a2l
setlocal enabledelayedexpansion
for %%i in ("%file%") do set "file_path=%%~fi"
echo File path: %file_path%
```
这个脚本首先设置了变量`file`,然后使用`setlocal enabledelayedexpansion`开启了延迟环境变量扩展。
接下来,使用`for`循环以双引号括起来的变量名作为参数遍历文件路径,然后使用`set`命令将文件路径存储在新的变量`file_path`中。其中`%%~fi`表示去掉双引号后的文件路径。
最后,使用`echo`命令打印出`file_path`的值。需要注意的是,在使用延迟环境变量扩展时,需要使用`!`而不是`%`来引用变量。而在这个例子中,由于变量`file_path`是在`for`循环中设置的,所以需要使用`!`来引用。而变量`file`则可以直接使用`%`来引用。
编写批处理脚本将同目录下的文件"P445_basic_Asw1.a2l"复制进/pathAsw1文件夹,"P445_basic_Asw2.a2l"复制进/pathAsw2文件夹,"P445_basic_Asw3.a2l"复制进/pathAsw3文件夹,"P445_basic_Asw4.a2l"复制进/pathAsw4文件夹,"P445_basic_Bsw1.a2l"复制进/pathBsw1文件夹.将"Engine_Bsw1.a2l""Engine_Asw1.a2l""Engine_Asw2.a2l""Engine_Asw3.a2l""Engine_Asw4.a2l"复制进/path文件夹,最后删除/path,/pathAsw1,/pathAsw2,/pathAsw3,/pathAsw4,/pathBsw1,文件夹和文件夹中的文件
可以使用以下批处理脚本实现:
```
@echo off
rem 创建文件夹
md pathAsw1
md pathAsw2
md pathAsw3
md pathAsw4
md pathBsw1
md path
rem 复制文件
copy P445_basic_Asw1.a2l pathAsw1
copy P445_basic_Asw2.a2l pathAsw2
copy P445_basic_Asw3.a2l pathAsw3
copy P445_basic_Asw4.a2l pathAsw4
copy P445_basic_Bsw1.a2l pathBsw1
copy Engine_Bsw1.a2l path
copy Engine_Asw1.a2l path
copy Engine_Asw2.a2l path
copy Engine_Asw3.a2l path
copy Engine_Asw4.a2l path
rem 删除文件夹和文件
rd /s /q pathAsw1
rd /s /q pathAsw2
rd /s /q pathAsw3
rd /s /q pathAsw4
rd /s /q pathBsw1
rd /s /q path
```
该脚本首先使用`md`命令创建需要的文件夹,然后使用`copy`命令将文件复制到对应的文件夹中。最后使用`rd`命令删除文件夹和文件。请确保该脚本和需要复制的文件都在同一目录下,然后运行该脚本即可。
阅读全文