Board logo

标题: [系统相关] 批处理如何访问指定目录下排除指定名称的子文件夹以外的其他子文件夹? [打印本页]

作者: ygqiang    时间: 2017-4-21 16:00     标题: 批处理如何访问指定目录下排除指定名称的子文件夹以外的其他子文件夹?

本帖最后由 pcl_test 于 2017-4-21 18:26 编辑

win7系统,批处理如何访问某个目录(前缀确定、后缀不确定)?
C:\Users\user\Desktop
C:\Users\Public\Desktop

1、上面user、Public是2个固定的用户名。先要排除掉。不需要访问。
2、不确定用户名规律是。
C:\Users\user201\Desktop
C:\Users\user231\Desktop
C:\Users\user195\Desktop
C:\Users\user608\Desktop
。。。。
就是说,用户名userabc,其中前缀user是固定的,后面abc都是某个数字。但不确定是哪个数字。
3、删除C:\Users\userabc\Desktop路径下的xx.lnk、yy.url文件。
作者: taofan712    时间: 2017-4-21 16:24

可以考虑通配符, 三个问号???代表三个任意字符。
作者: ShowCode    时间: 2017-4-21 16:39

  1. @echo off
  2. pushd "C:\Users"
  3. for /f %%i in ('dir /b /ad ^| findstr "user[0-9][0-9][0-9]"') do (
  4.     del /f /q "C:\Users\%%i\Desktop\xx.lnk"
  5.     del /f /q "C:\Users\%%i\Desktop\yy.url"
  6. )
复制代码

作者: yuboabc    时间: 2017-4-21 16:42

本帖最后由 yuboabc 于 2017-4-21 18:39 编辑

@echo off
for /f "delims=" %%i in ('dir /s/b/a-d ^|findstr "user[0-9][0-9][0-9]" ^|findstr ".lnk .url"') do del /q/f "%%i"
pause
作者: ygqiang    时间: 2017-4-21 16:45

回复 2# taofan712

回复 4# yuboabc

回复 3# ShowCode

加    ???,运行不了。

不过搞定了。
  1. del /q "%userprofile%\Desktop\*.url"
复制代码

作者: ShowCode    时间: 2017-4-21 17:22

回复 5# ygqiang


    3楼代码有什么报错信息吗?
作者: yuboabc    时间: 2017-4-21 18:37

回复 5# ygqiang


    哦,你这样只能删除当前登录用户 家目录下桌面上的 .lnk .url




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2