findstr и && не играют вместе - PullRequest
       0

findstr и && не играют вместе

0 голосов
/ 09 сентября 2018

это должно определить, какая ошибка была опубликована от 7z.exe до "%temp%\error.unp" и действовать соответственно. однако && после findstr вообще не работает, конкретные команды никогда не выполняются. что я делаю не так?

type "%temp%\error.unp" || findstr /c:"Wrong password" && set /p "password=enter password other than fanedit.org: " && goto security
type "%temp%\error.unp" || findstr /c:"not enough space" && rmdir /s /q %drive%\$recycle.bin && echo disk was full, recycle bin emptied out.

1 Ответ

0 голосов
/ 09 сентября 2018

Как уже упоминалось в комментарии к ответу Proteks, вам нужно заключить в скобки скобки.
Не нужно втиснуть все в одну строчку. Реагирование исключительно на уровень ошибки означает, что вы должны подавить другой вывод с помощью >Nul 2>&1

Редактировать: обратный порядок перенаправления из-за подсказки @ sst
Попробуйте:

type "%temp%\error.unp" | findstr /c:"Wrong password" >Nul 2>&1 &&(
    set /p "password=enter password other than fanedit.org: " 
    goto security
)
type "%temp%\error.unp" | findstr /c:"not enough space" >Nul 2>&1 &&( 
    rmdir /s /q %drive%\$recycle.bin
    echo disk was full, recycle bin emptied out.
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...