找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 2360|回复: 3

[文件操作] [已解决]批处理变量结果有空格,如何只要空格前面的部分

[复制链接]
发表于 2025-8-30 07:39:25 | 显示全部楼层 |阅读模式
假如变量结果有空格,如何只要空格前面的部分?如:%USERNAME%用户名为:Fei Hu,只要Fei,怎么写批处理!
谢谢各位!!

解决脚本如下,分享给坛友们,感谢楼下各位朋友的帮忙
  1. @echo off
  2. for /f "delims= " %%a in ("%USERNAME%") do set "v=%%a"
  3. if /i "%v%"=="%USERNAME%" (set "v=没有") else set "v=%v%"
  4. @echo on
  5. del "%SystemDrive%\Users\%v%"
  6. pause
复制代码
此代码用于删除%SystemDrive%\Users\空格用户名前缀的一个文件
发表于 2025-8-30 07:49:34 | 显示全部楼层
  1. @echo off
  2. for /f %%a in ("%USERNAME%") do (
  3.         set str=%%a
  4. )
  5. setlocal enabledelayedexpansion
  6. echo !str!
  7. endlocal
  8. pause
复制代码

包括空格、制表符

评分

参与人数 1技术 +1 收起 理由
zhoubin + 1 谢谢

查看全部评分

 楼主| 发表于 2025-8-30 08:34:18 | 显示全部楼层
回复 2# 77七
如果%USERNAME%用户名有空格,如:Fei Hu,显示:Fei;如果没有空格,如:Hu,则显示:无,怎么改一下,谢谢您!!
发表于 2025-8-30 08:39:05 | 显示全部楼层
本帖最后由 aloha20200628 于 2025-8-30 09:34 编辑

回复 1# zhoubin

  1. @echo off &for /f "delims= " %%a in ("%USERNAME%") do set "v=%%a"
  2. if /i "%v%"=="%USERNAME%" (echo,无空格) else echo,%v%
  3. pause&exit/b
复制代码

评分

参与人数 1技术 +1 收起 理由
zhoubin + 1 符合要求,谢谢,推荐!!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 07:06 , Processed in 0.027276 second(s), 13 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表