Nano Hash - криптовалюты, майнинг, программирование

Как удалить несколько значений в реестре

Я пытаюсь удалить определенные значения реестра. Я использовал код (автор "rojo").

  1. Этот код отлично работает, если вы определяете точный ключ. Например, я хочу удалить Logon.vbs из клавиши «Выполнить». Если я также хочу удалить Logoff.vbs, похоже, я не могу использовать *.vbs для удаления этих двух файлов. Как бы я это сделал (удалив несколько ключей с одним и тем же расширением)?

  2. Связанный с этим вопрос заключается в том, как удалить ключ, содержащий определенные данные. Например, у меня есть ключ с именем Logon, который содержит данные для C:\Windows\Logon.vbs. Я хочу, чтобы этот ключ также был удален. При использовании приведенного выше примера это не сработало.

У меня есть разрешения на эти ключи, так что это не проблема. Что я упускаю или делаю неправильно?

В качестве примера я предоставил скриншот, где пример (1) представлен красным цветом, а (2) - синим. Скриншот: Скриншот Regedit

Код в моем первом примере будет выглядеть так:

@echo off
setlocal
set "DisableScripts=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"

rem get only the first token of each line of "reg query"
for /f %%I in (
    'reg query "%DisableScripts%"'
) do (
    echo(%%I | findstr /i "Logon.vbs" >NUL && (
        rem (if "findstr" didn't exit with an abnormal error code)
        echo Deleting item %%I
        reg delete "%DisableScripts%" /v "%%I" /f
    )

Это прекрасно удаляет ключ «Logon.vbs». Однако я также хочу удалить «Logoff.vbs». Я пробовал с "*.vbs", но безрезультатно.

Приведенный выше код также не удаляет значение «Script», в котором данные содержат Logon.vbs. Я полагаю, что мне как-то придется использовать переключатель /d для этого...


  • Вы должны добавить примеры к своим вопросам. 13.11.2013
  • Привет, Эндоро, ты прав, я добавил пример и дополнительную информацию. Заранее спасибо! 14.11.2013
  • Привет, я разместил решение ниже, но я не могу понять, как удалить эти ключи с определенным значением в поле данных .... Кто-нибудь? Спасибо. 14.11.2013

Ответы:


1

Код для первого примера:

for /f %%a in ('reg query "%DisableScripts%" /s^|findstr /ic:"\.vbs "') do echo reg delete "%DisableScripts%" /v "%%~a" /f

Код для второго примера:

for /f %%a in ('reg query "%DisableScripts%" /s^|findstr /eic:"C:\\logon\.vbs"') do echo reg delete "%DisableScripts%" /v "%%~a" /f

Обратите внимание на выражения Regex "\.vbs " и "C:\\logon\.vbs". Используйте командную строку с правами администратора.

14.11.2013
  • Спасибо Эндоро! При использовании: /s^findstr /ic:\.vbs удаляются оба ключа с vbs в поле Data как ключи, в имени которых есть .vbs. 15.11.2013

  • 2

    Хорошо, так что я не уверен, как я пропустил это. Конечно, вы должны добавить % .... Ниже кода для удаления всех файлов VBS под ключом \Run:

    @echo off
    setlocal
    set "DisableScripts=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
    
    rem get only the first token of each line of "reg query"
    for /f %%I in (
        'reg query "%DisableScripts%"'
    ) do (
        echo(%%I | findstr /i "%*.vbs" >NUL && (
            rem (if "findstr" didn't exit with an abnormal error code)
            echo Deleting item %%I
            reg delete "%DisableScripts%" /v "%%I" /f
        )
    (
    

    Позже я проверю, как удалить определенные данные из поля данных и опубликую здесь.

    14.11.2013
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..