Windows命令-FINDSTR命令(重点)

1 需求


2 语法

在文件中寻找字符串。

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
        [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
        strings [[drive:][path]filename[ ...]]

  /B         在一行的开始配对模式。
  /E         在一行的结尾配对模式。
  /L         按字使用搜索字符串。
  /R         将搜索字符串作为一般表达式使用。这是默认设置。
  /S         在当前目录和所有子目录中搜索匹配文件。
  /I         指定搜索不分大小写。
  /X         打印完全匹配的行。
  /V         只打印不包含匹配的行。
  /N         在匹配的每行前打印行数。
  /M         如果文件含有匹配项,只打印其文件名。
  /O         在每个匹配行前打印字符偏移量。
  /P         忽略有不可打印字符的文件。  
  /OFF[LINE] 不跳过带有脱机属性集的文件。
  /A:attr    指定有十六进位数字的颜色属性。请见 "color /?"
  /F:file    从指定文件读文件列表 (/ 代表控制台)。
  /C:string  使用指定字符串作为文字搜索字符串。
  /G:file    从指定的文件获得搜索字符串。 (/ 代表控制台)。
  /D:dir     查找以分号为分隔符的目录列表
  strings    要查找的文字。
  [drive:][path]filename
             指定要查找的文件。

除非参数有 /C 前缀,请使用空格隔开搜索字符串。
例如: 'FINDSTR "hello there" x.y' 在文件 x.y 中寻找 "hello" 或
"there"。'FINDSTR /C:"hello there" x.y' 文件 x.y  寻找
"hello there"。

一般表达式的快速参考:
  .        通配符: 任何字符
  *        重复: 以前字符或类出现零或零以上次数
  ^        行位置: 行的开始
  $        行位置: 行的终点
  [class]  字符类: 任何在字符集中的字符
  [^class] 补字符类: 任何不在字符集中的字符
  [x-y]    范围: 在指定范围内的任何字符
  \x       Escape: 元字符 x 的文字用法
  \<xyz    字位置: 字的开始
  xyz\>    字位置: 字的结束

有关 FINDSTR 常见表达法的详细情况,请见联机命令参考。

3.X 示例:获取应用的

adb shell dumpsys package | findstr "Package.\[ userId codePath versionCode minSdk targetSdk versionName apkSigningVersion signatures"


3.X 示例:获取 申请FOREGROUND_SERVICE权限、targetSdk大于等于30的应用列表 

adb shell dumpsys package permission android.permission.FOREGROUND_SERVICE | findstr "Package.\[ targetSdk"


3.X 示例:

adb shell dumpsys appops --op 1 | findstr /I "..:..:.. Package" 


4 参考资料

findstr | Microsoft Docs


用途X:搜索A或者B

findstr "A B"


用途X:搜索"A B"

小技巧:搜索带空格的字符串

findstr /C:"Package ["

小技巧:搜索两个字符串,但其中一个字符串带空格

findstr "Package.\[ targetSdk"

adb shell dumpsys package permission android.permission.INTERNET | findstr "Package.\[ targetSdk"

adb shell dumpsys package | findstr "Package.\[ targetSdk"

小技巧:搜索带双引号的字符串

adb shell cat /data/system/packages.xml | findstr "sharedUserId=\"1000\" granted=\"true\""


正在表达式 元字符 和 Java转义字符

  • [
    • \[:正则表达式 元字符,用于分组
      • \\[:Java转义字符
  • (
    • \(:正则表达式 元字符,用于分组
      • \\(:Java转义字符
  • "
    • \"
      • \\":Java转义字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值