[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解決]求批处理搜索指定文件夹下搜索文件名加後缀。打开这个文件所在文件夹

本帖最后由 867258173 于 2014-12-19 20:10 编辑

不同电脑\Flash Player\#SharedObjects下有而个文件名不同,随机生成的。比如自己家是【2B2YZ76D】和别人家是【DABERSGX】。自己家是【##F80639C4B04BE75F】,別人家是【##3GF2YPGM】。请问怎样跳过这兩随机生成的文件夹,直接打开或是搜索打开【00000001.sol】所在這個文件夹呢?
%APPDATA%\Macromedia\Flash Player\#SharedObjects\2B2YZ76D\localhost\##F80639C4B04BE75F\00000001.sol
%APPDATA%\Macromedia\Flash Player\#SharedObjects\DABERSGX\localhost\##3GF2YPGM\00000001.sol

1.搜索#SharedObjects文件夹下指定文件名,若有重复的,以最新修改时间判断,并打开这个最新修改时间搜索到的指定文件名的所在文件夹。
2.要是能有个判断XP,WIN7系统,并分别在【 %ALLUSERSPROFILE%\Application Data\Macromedia\Flash Player\#SharedObjects】或【%AppData%\Macromedia\Flash Player\#SharedObjects】搜索就更好了。

本帖最后由 apang 于 2014-12-20 19:23 编辑
  1. @echo off & setlocal enabledelayedexpansion
  2. set "D=00000000"
  3. pushd "%APPDATA%\Macromedia\Flash Player\#SharedObjects\"
  4. for /f "delims=" %%i in ('dir /a-d /b /s 00000001.sol?') do (
  5.         for /f "tokens=1-4 delims=-/. " %%a in ("%%~ti") do (
  6.                 if "%%a%%b%%c%%d" gtr "!D!" (
  7.                         set "D=%%a%%b%%c%%d"
  8.                         set "fd=%%~dpi"
  9.                 )
  10.         )
  11. )
  12. if exist "%fd%" start "" "%fd%."
  13. pause
复制代码
--------------------------------------------------------------------------------
以上弄复杂了,可以简化:
  1. @echo off & setlocal enabledelayedexpansion
  2. pushd "%APPDATA%\Macromedia\Flash Player\#SharedObjects\"
  3. for /r %%i in (00000001.sol?) do (
  4.         if "%%~ti" gtr "!D!" (
  5.                 set "D=%%~ti"
  6.                 set "fd=%%~dpi"
  7.         )
  8. )
  9. if defined fd start "" "%fd%"
复制代码
  1. @echo off
  2. pushd "%APPDATA%\Macromedia\Flash Player\#SharedObjects\"
  3. %1for /f "tokens=2*" %%a in ('"%~0" :^|sort /r')do start "" "%%b" & exit
  4. for /r %%a in (00000001.sol?) do echo,%%~ta %%~dpa
复制代码

TOP

回复 2# apang


太感謝了,成功了,這樣在不同電腦XP/Win7也能直接使用,不用擔心localhost前後文件夾的隨機生成數字串的不同文件夾問題了。

TOP

本帖最后由 867258173 于 2014-12-21 17:25 编辑

回复 2# apang


   感謝簡化代碼,更加方便。麻煩一下,請問下如何將這代碼分別添加2個功能
1.把搜索到的最新修改時間00000001.sol複製到子目錄下。
2.將子目錄的00000001.sol複製到搜索的最新修改時間文件下并直接覆蓋。不提示Y/N呢。



另外問下這代碼除了在WIN7上,XP/Vista/WIN8也能通用吧?

TOP

返回列表