windows - 使用批处理从路径中删除尾部反斜杠
问题描述
我有一个保存在变量中的文件名:
C:\Directory\Directory2\
现在我想要这个:
C:\Directory\Directory2
如何\
从文件名或最后一个字符中删除最后一个?
解决方案
好吧,不要!删除尾部反斜杠可能会更改路径指向的目标;想想C:\
——它指向驱动器的根目录,而C:
指向它的当前目录。
处理潜在尾随反斜杠的最可靠方法可能是附加.
, 因为C:\Directory\Directory2\
等价于C:\Directory\Directory2\.
,C:\Directory\Directory2
和C:\Directory\Directory2.
, 因为所有这些路径都指向完全相同的位置。
如果后缀因美观原因而受到干扰,请在附加后通过for
循环.
解决:
set "dirPath=C:\Directory\Directory2\"
for %%I in ("%dirPath%.") do echo "%%~fI"
修饰符~f
定义解析路径并将相对路径转换为完整/绝对路径。
如果提供的路径甚至可能以\.
或类似的东西结尾C:.
,附加另一个.
会改变它的目标;然而,这可以for
在附加之前通过另一个循环来解决.
:
set "dirPath=C:\Directory\Directory2\."
for %%J in ("%dirPath%") do for %%I in ("%%~fJ.") do echo "%%~fI"
请注意,它会for
解析通配符,例如?
和*
。
推荐阅读
- dotnetnuke - 如何恢复 DNN 站点
- javascript - 滑块中心模式样式
- javascript - Firebase 函数获取排名
- android-studio - 已解决:无法使用 Android Studio 在手机或模拟器上运行应用程序:adb.exe start-server failed -- 必要时手动运行
- php - 使用 ajax 和进度条上传文件
- python - 打印导致python中的多行面临错误
- node.js - Discord.js - 发送消息的计数器,DM给公会的所有成员
- python - redirect() / render_template() 在Flask中从同一路由调用时再次进入路由
- linux - 如何修复 bash 错误 - /dev/tty 没有这样的设备或地址
- python - 如何在Python中更新参数并传递给solve_ivp