Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Система - [решено] Привязка к версии операционной системы в командной строке

Ответить
Настройки темы
Система - [решено] Привязка к версии операционной системы в командной строке

Новый участник


Сообщения: 30
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


День добрый.
Появилась необходимость написания батника, который будет удалять информацию о браузере GoogleChrome (для случая синхронизации настроек со своим аккаунтом на другом компьютере и последующем откате изменений).
Однако настройки хранятся в разных местах, в зависимости от версии ОС.
Так для Win7 это C:\Users\%Текущий пользователь%\AppData\Local\Google\Chrome\User Data\
Для WinXP C:\Documents and Setings\%Текущий пользователь%\Local Settings\Application Data\Google\Chrome\User Data\
Непосредственно для Win7 батник я уже написал, выглядит примерно так:
Код: Выделить весь код
@echo off
title Удаление данных о Google Chrome c компьютера
taskkill /f /im chrome.exe
echo
echo Остановка и выгрузка из памяти всех процессов Chrome. Подождите...
ping -n 3 127.0.0.1 > NUL
rd /s /q "%USERPROFILE%\AppData\Local\Google\Chrome\User Data"
echo
echo Все данные успешно удалены, можно запустить девственно чистую версию браузера
ping -n 10 127.0.0.1 > NUL
exit
Отдельно для XP переписать этот код тоже не проблема, но хотелось бы унифицировать. Полазил по тырнету, поискал информацию, однако единственное, что нашел - команда 'ver'. В Win7 она возвращает значение 'Microsoft Windows [Version 6.1.7600]'. Вот ее я и пытался использовать для привязки к версии OC. На текущий момент код проверки выглядит так (все естественно временно-корявенько):
Код: Выделить весь код
@echo off
rem Начинаем карусель
if ver = "Microsoft Windows [Version 6.1.7600]" goto Win7 
pause
if ver <> "Microsoft Windows [Version 6.1.7600]"goto WinXP
pause
:win7
echo Версия виндовс =7
goto exitfile
:winXP Версия виндовс =XP
goto exitfile
:exitfile
pause
В этом случае возвращается ошибка : Непредвиденное появление: =.
Подумал и о том, чтобы взять ver в знаки процентов, как для переменных (%ver%), в это случает ошибка следующего вида: Непредвиденное появление: goto.

Отсюда и вытекает очевидный вопрос: может ли кто-нибудь помочь мне в унификации файлика. Спасибо заранее.

Отправлено: 13:38, 14-10-2011

 

Аватара для Morpheus

Ветеран


Сообщения: 12426
Благодарности: 2328

Профиль | Отправить PM | Цитировать


defor6,
Код: Выделить весь код
@Echo Off
Set w7=0
Ver | Find "6.1" >Nul && Set w7=1

If %w7%==1 (
Rem это Win7
	Echo Windows 7
) Else (
Rem это не Win7
	Echo Windows не 7
)
CMD/BAT - Определение ОС
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:00, 14-10-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Moderator


Сообщения: 53456
Благодарности: 15501

Профиль | Отправить PM | Цитировать


Цитата defor6:
rd /s /q "%USERPROFILE%\AppData\Local\Google\Chrome\User Data"
Можно сделать просто:
Код: Выделить весь код
if exist "%USERPROFILE%\AppData\Local\Google\Chrome\User Data" rd /s /q "%USERPROFILE%\AppData\Local\Google\Chrome\User Data"
if exist "%USERPROFILE%\Local Settings\Application Data\Google\Chrome\User Data" rd /s /q "%USERPROFILE%\Local Settings\Application Data\Google\Chrome\User Data"
или усложнить, вытащив путь из реестра:
Код: Выделить весь код
if not defined LocalAppData (
  chcp 1251 >nul
  for /f "tokens=3*" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"^|find /i "Local AppData"') do set LocalAppData=%%b
  chcp 866 >nul
)
if exist "%LocalAppData%\Google\Chrome\User Data" rd /s /q "%LocalAppData%\Google\Chrome\User Data"
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:16, 14-10-2011 | #3


Новый участник


Сообщения: 30
Благодарности: 0

Профиль | Отправить PM | Цитировать


Большое спасибо. Поиском я пытался найти все, что связано с "Командная строка" или просто "Командная". Про BAT и CMD как то не подумал.

Отправлено: 15:20, 14-10-2011 | #4



Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Система - [решено] Привязка к версии операционной системы в командной строке

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Обзор тестовой версии операционной системы MeeGo OSZone News Новости информационных технологий 0 29-05-2010 19:30
Доступ - Пароль в командной строке AlexxxMksv Microsoft Windows 2000/XP 2 23-05-2009 03:03
Кириллица в командной строке mikha1979 Хочу все знать 6 10-07-2008 12:44
Интерфейс - изменение версии операционной системы Kaleostra Microsoft Windows 2000/XP 7 21-01-2008 21:33
Вопрос по командной строке Homer_xxl Microsoft Windows 95/98/Me (архив) 6 02-04-2007 14:10




 
Переход