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

[文本处理] 不用临时文件怎么比较2个for结果的差异

[复制链接]
 楼主| 发表于 2020-7-21 21:38:48 | 显示全部楼层
回复 29# went


有个问题,最后到要安装那步。。。前面的api等级未知。。。。又不能adb *%%i.apk
发表于 2020-7-22 00:38:04 | 显示全部楼层
  1. (echo %s1%) | findstr "%s2%"
复制代码
上面的用在for里会出错,下面的可行
  1. for /f  %%i in ('cmd /c "echo %s1%" ^| findstr "%s2%"') do echo %%i
复制代码
发表于 2020-7-23 17:09:51 | 显示全部楼层
回复 31# hentai87

for 中可以给变量添加很多你需要的附加参数,用#分隔
我帮你添加了本地文件路径和远程apk路径,其它的你自由发挥
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. REM 记录已备份的apk
  4. for /f "tokens=1,2* delims=_" %%i in ('dir /b .\bak\*_*_*.apk') do set "#%%~nk=已备份#未安装#%%i_%%j_%%k"
  5. REM 记录已安装的apk
  6. for /f "tokens=1-3* delims=:=" %%i in ('adb shell pm list packages -f -a') do (
  7.         if "%%l"=="" (
  8.                 if "!#%%k!"=="" (
  9.                         set "#%%k=未备份#已安装#_#%%j"
  10.                 ) else (
  11.                         set "#%%i=已备份#已安装!#%%k:~7!#%%j"
  12.                 )
  13.         ) else (
  14.                 if "!#%%l!"=="" (
  15.                         set "#%%l=未备份#已安装#_#%%j==%%k"
  16.                 ) else (
  17.                         set "#%%i=已备份#已安装!#%%l:~7!#%%j==%%k"
  18.                 )
  19.         )
  20. )
  21. REM 过滤
  22. echo 已备份#未安装:
  23. echo.
  24. for /f "tokens=1-3* delims=#" %%i in ('set # ^| findstr "已备份#未安装"') do (
  25.         set "pkgName=%%i"
  26.         echo 包名: !pkgName:~0,-4!
  27.         echo 文件: .\bak\%%k
  28.         echo.
  29. )
  30. echo -----------------------------------------------------
  31. echo 未备份#已安装:
  32. echo.
  33. for /f "tokens=1-3* delims=#" %%i in ('set # ^| findstr "未备份#已安装"') do (
  34.         set "pkgName=%%i"
  35.         echo 包名: !pkgName:~0,-4!
  36.         echo 路径: %%l
  37.         echo.
  38. )
  39. echo -----------------------------------------------------
  40. pause&exit
复制代码
发表于 2020-7-23 17:29:40 | 显示全部楼层
回复 15# hentai87
加个转义符试试(echo %s1%) ^| findsrt %s2%
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 05:33 , Processed in 0.016459 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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