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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как в строке оставить лишь 2 символа, не зная её размера

Ответить
Настройки темы
CMD/BAT - [решено] Как в строке оставить лишь 2 символа, не зная её размера

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


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

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


Имеется переменная, необходимо удалить все символы кроме первых двух

Отправлено: 20:21, 09-07-2011

 

Ветеран


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

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


white155,
Код: Выделить весь код
set "var=some string"
set "var=%var:~0,2%"
echo %var%
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:25, 09-07-2011 | #2



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

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


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


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

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


Ещё вопрос, мне необходимо в программе перейти на текущий диск переменной, приведу пример

Есть переменная %BUCKUP% в разных частях программы может принимать разные значения путей на компьютере, и содержать путь как на диске С: так и на любых других

Мне надо узнать эти первые 2 символа, что мы и сделали выше, но использовать их не получается

Вообщем если %BUCKUP% содержит R:\temp\1\dt надо в батнике перейти на диск R:
текущий диск при этом может быть любой другой

если в программе просто писать R: то программа переходит на диск R,
а как можно воспользоваться переменной %BUCKUP% и перейти на нужный диск, программно вытащив его с %BUCKUP%

Отправлено: 20:53, 09-07-2011 | #3


Ветеран


Contributor


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

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


Если перейти в R:\temp\1\dt , то

CD /D R:\temp\1\dt

Если в корень диска, то можно как-то вот так
Код: Выделить весь код
::..... Текст батника
::.....
::.....

Call :Disk %Backup%
Cd /D %D%\

::..... Текст батника
::.....
::.....

GoTo :Eof

:Disk
Set D=%~d1
GoTo :Eof
Это можно подсмотреть, набрав For /?

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:32, 09-07-2011 | #4


Ветеран


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

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


Цитата white155:
а как можно воспользоваться переменной %BUCKUP% и перейти на нужный диск, программно вытащив его с %BUCKUP% »
Код: Выделить весь код
cd /d %BUCKUP:~0,2%

или 

pushd %BUCKUP:~0,2%
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:43, 09-07-2011 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как в строке оставить лишь 2 символа, не зная её размера

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Замена символа в строке, по номеру [PERL] WestBronx Вебмастеру 1 22-03-2008 14:31
Как зная MAC узнать IP _sten_ Сетевые технологии 1 22-04-2007 01:50
Как разархивировать ехе WinRAR файл не зная пароль. Gregoriy Защита компьютерных систем 13 21-11-2005 09:23
Как получить удаленный доступ к Win2003 зная пароль администратора? Livesms Защита компьютерных систем 4 19-07-2005 22:30
Номер символа в строке Nealles Программирование и базы данных 3 22-05-2003 00:41




 
Переход