SHELL 到 BATCH:grep -Ev 命令

SHELL to BATCH : grep -Ev command

我需要一些帮助。我有这个 shell 脚本代码,它工作正常。

 databases=`mysql -u$dbUser -p$dbPass -e "SHOW DATABASES LIKE '%demo%';"  | grep -Ev "(Database|information_schema)"`

如何批量转换?

您可以以此为基础,根据您的需要进行调整。

@echo off
    setlocal enableextensions enabledelayedexpansion

    set "dbUser=username"
    set "dbPass=password"

    set "databases="
    for /f "usebackq delims=" %%a in (`
        mysql -u%dbUser% -p%dbPass% -e "SHOW DATABASES LIKE '%%demo%%';" 
        ^| findstr /l /v /c:"Database" /c:"information_schema"
    `) do set "databases=!databases! %%a"

    echo %databases%

for 命令将执行 mysql 命令,对于不包含指定字符串的行,将用 findstr 过滤该命令。对于每一行输出,执行 do 子句中的代码。每个输出行都连接到 databases 变量。