SamForum.org  
SamLab.ws
Заблокированные пользователи

Вернуться   SamForum.org > Операционные системы > Windows
Важная информация

Ответ
 
Опции темы Опции просмотра
Помогите написать батник
Старый Добавлено: 05.08.2007, 03:29
  (#1)
Leo
Гость
 
Аватар для Leo

Восклицание Помогите написать батник

Вопрос всем "шарющим" в батниках,хелп!
Хелп,люди,надо срочно научиться прописывать правильно ПУТЬ в батнике.
Основное и самое простое я знаю(типа : start .\mymusi~1\pesnia.mp3 ..),у меня тут
такая ситуация : файл находиться здесь :
E:\Different\System-2\Secure\ESET NOD32 2.70.39\nentrust.exe
Если nentrust.exe лежит в папке Secure,
то все работает,если дальше(Secure->ESET NOD32 2.70.39),
уже не работает,пишет типа "проверьте правильность написания имени...."
Пробовал так :
start E:\Different\System-2\Secure\ESETNOD322.70.39\nentrust.exe
и так :
start E:\Different\System-2\Secure\ESETNO~1\nentrust.exe
->не работает ни в одном случае.
Работает только если nentrust.exe находиться в папке Secure:
start E:\Different\System-2\Secure\nentrust.exe
и так :
start E:\Differ~1\System-2\Secure\nentrust.exe
Знаю,что командная строчка не любит пробелов в названиях,но как сделать,чтоб если
название с пробелами,командная строчка нашла путь?Пробовал так же,только с другой
дирой: тоже E:\Different\System-2\CD\Alcohol 120% 1.9.6\alcohol.exe ->
опять же : если alcohol.exe в папке CD,все работает,если дальше (В Alcohol 120% 1.9.6),
уже не может найти путь(кстати,здесь пробовал переименовать папку,убрав символ %,
безрезультатно;но если папку еще раз переименовать без пробелов - Alcohol1201.9.6,то
все работает!,но его нельзя переименовывать по личным мотивам).

Еще такая трабла: как прописать путь к файлу который находиться в:
E:\Pictures\Models\Album2\new.jpg
Вся загвоздка в том,что сам батник находиться в папке Album1.Прописал бы весь путь,
но это все будет записано на диск,и я не буду знать какая будет буква диска(болванку
запишу не только для себя),по этому путь может оказаться ошибочным.
Есть еще и вторая запарка :получается,надо прописать путь на 1 шаг назад,т.е. в таком
порядке :
start Album1<-Models->Album2->new.jpg
был бы батник в папке Models,путь выглядел бы следующим образом:
start .\Album2\new.jpg
Но его месторасположение менять нельзя.
Интересная ситуация,неправда ли?

Да и еще к этому же : знаю,что пропись в батнике должна быть только латинницей,но
как насчет символов ",$,%,*,#, .Их ведь командная строчка тоже не распознает.Как
"обмануть" cmd?
Заранее выражаю свою благодарность,тем кто помог.
Вверх
Ответить с цитированием
Старый Добавлено: 05.08.2007, 11:06
  (#2)
drima
Гость
 
Аватар для drima

По умолчанию

а попробуй ситуацию как на FTP например "ftp://192.168.100.50/incoming/Новая папка (2)" выглядит как "ftp://192.168.100.50/incoming/%CD%EE%E2%E0%FF%20%EF%E0%EF%EA%E0%20(2)/"

Добавлено через 5 минут
Цитата:
Сообщение от Leo Посмотреть сообщение
Знаю,что командная строчка не любит пробелов в названиях,но как сделать,чтоб если
название с пробелами,командная строчка нашла путь?Пробовал так же,только с другой
дирой: тоже E:\Different\System-2\CD\Alcohol 120% 1.9.6\alcohol.exe ->
опять же : если alcohol.exe в папке CD,все работает,если дальше (В Alcohol 120% 1.9.6),
уже не может найти путь(кстати,здесь пробовал переименовать папку,убрав символ %,
безрезультатно;но если папку еще раз переименовать без пробелов - Alcohol1201.9.6,то
все работает!,но его нельзя переименовывать по личным мотивам).

Заметь, пробел эквивалентен %20

Последний раз редактировалось drima; 05.08.2007 в 11:06.. Причина: Сообщение объединено с предыдущим
Вверх
Ответить с цитированием
to Drima
Старый Добавлено: 06.08.2007, 03:05
  (#3)
Leo
Гость
 
Аватар для Leo

Вопрос to Drima

то что,%20 эквивалентен пробелу понятно,но как определить как обозначить какую-либо букву???То есть Новая папка (2) пишется на языке бат %CD%EE%E2%E0%FF%20%EF%E0%EF%EA%E0%20(2)/, но как узнать самому например как пишется "музыка"???И зачем после каждых 2 букв знак % а в конце знак "/"???
Вверх
Ответить с цитированием
Старый Добавлено: 06.08.2007, 15:06
  (#4)
бYжяй
Наблюдающий
Пользователь
 
Аватар для бYжяй

По умолчанию

числовой код буквы можно посмотреть по таблице ASCII (можно в экселе посмотреть: =КОДСИМВ(A1), в A1 - нужный символ). А затем его надо перевести в hex-код (н-р, с помощью виндового калькулятора).
Если ты умеешь программировать, то функция на Delphi: format('%%%x', [ord(s1[i])]);

А путь я записал в виде:
\Different\System-2\Secure\"ESET NOD32 2.70.39"\

Добавлено через 4 минуты
Чтобы записать относительные пути можно использовать "..", н-р:
..\Album2\new.jpg
или ..\..\Album2\new.jpg и т.д.


Ну почему он жулик? Человек умеет жить!
"Берегись автомобиля!", 1966

Последний раз редактировалось бYжяй; 06.08.2007 в 15:06.. Причина: Сообщение объединено с предыдущим
бYжяй вне форума Отправить личное сообщение для бYжяй
Вверх
Ответить с цитированием
RTFM!
Старый Добавлено: 10.08.2007, 18:44
  (#5)
filio
Гость
 
Аватар для filio

Сообщение RTFM!

ГОСПОДА!
в случае, если в пути имеются пробелы, то строку нужно заключать в кавычки. Например, вот так:
>>> cd "E:\Different\System-2\CD\Alcohol 120% 1.9.6\alcohol.exe"
а вообще-то, cmd /? в помощь. там ответы на эти вопросы есть. в том числе и про спецсимволы...
Удачи.

Новая папка (2) будет так:
>>cd "Новая папка (2)"
или так:
>>cd Новая%20папка%20(2) (не проверял... идеологически правильно... но не работает... )

Последний раз редактировалось filio; 10.08.2007 в 18:56..
Вверх
Ответить с цитированием
RE:ALL
Старый Добавлено: 11.08.2007, 03:03
  (#6)
Leo
Гость
 
Аватар для Leo

Печаль RE:ALL

Ты прав насчет того,что с "%" Новая папка (2) не пройдет,а насчет кавычек-не пробовал еще,как попробую,скажу,но по моему cmd не поддерживает русские символы.
Еще я проверял правильность написания пути(на счет места,где находиться сам батник)-если прописывать путь от батника,то .\путь,если на 1 шаг назад,то .\..\путь. Лично проверял,работает 100%.
Но еще одно остается мне непонятным: как правильно прописать путь сюда :
E:\Different\System-2\CD\Emulators\Alcohol 120% 1.9.6.5429 Retail
Испробовал все варианты,кот знал(см. мое 1 сообщение),уже пробелы пробовал заменять %2,все равно,в безтолку.
Вверх
Ответить с цитированием
Старый Добавлено: 13.08.2007, 16:58
  (#7)
бYжяй
Наблюдающий
Пользователь
 
Аватар для бYжяй

По умолчанию

Я же вроде вверху написал как можно это сделать:
E:\Different\System-2\CD\Emulators\"Alcohol 120% 1.9.6.5429 Retail"\бла-бла-бла\"папка с пробелами в имени"

т.е. любую папку где есть пробелы надо заключать в кавычки, а %20 и всякая хрень - это вроде более высокого уровня способы задания адреса (н-р в браузерах)


Ну почему он жулик? Человек умеет жить!
"Берегись автомобиля!", 1966
бYжяй вне форума Отправить личное сообщение для бYжяй
Вверх
Ответить с цитированием
RE
Старый Добавлено: 16.08.2007, 02:27
  (#8)
Leo
Гость
 
Аватар для Leo

Вопрос RE

Вообщем,правильно получилось прописать,взяв в кавычки название диры с пробелами,а знак % нужно повторить 2 раза:
...\"Alcohol 120%% Retail 1.9.6" \....
Как только решил эту проблему,появилась новая : как запустить батник из батника?Если просто прописать :
Start путь\name.bat,вылазит какая то ошибка,типа файл не найден(а он прописан в том батнике,кот я хочю запустить через другой).
И еще: нельзя ли как нибудь попроще прописать путь русской кириллицей???
Вверх
Ответить с цитированием
Старый Добавлено: 16.08.2007, 06:35
  (#9)
бYжяй
Наблюдающий
Пользователь
 
Аватар для бYжяй

По умолчанию

батник из батника вызывается командой CALL, если не ошибаюсь.
А по русский пути писать не рекомендую, если надо будет сделать что-нибудь в MS-DOS будут небольшие проблемы.


Ну почему он жулик? Человек умеет жить!
"Берегись автомобиля!", 1966
бYжяй вне форума Отправить личное сообщение для бYжяй
Вверх
Ответить с цитированием
Старый Добавлено: 17.08.2007, 02:40
  (#10)
Leo
Гость
 
Аватар для Leo

Печаль

Какие именно проблемы???И как их устранить?Случайно не так,как описано выше(сначала в экселе,потом по какой-то таблице ASCII)???
HELP

Последний раз редактировалось Leo; 17.08.2007 в 02:41.. Причина: Сообщение объединено с предыдущим
Вверх
Ответить с цитированием
Старый Добавлено: 17.08.2007, 08:19
  (#11)
бYжяй
Наблюдающий
Пользователь
 
Аватар для бYжяй

По умолчанию

Я ведь сказал небольшие проблемы:
если тебе будет нужно скопировать данные с ж.дисков, а система не загружается (и под рукой нет Live-сидишника), то придется копировать под MS-DOS.
Хотя конешно всё равно нужен рем.диск с доступом к ntfs-разделам (если они есть).
Вот под MS-DOS и возникают иногда проблемы с кириллицей (хотя и есть keyrus и т.д.)

P.S. Хотя может быть у более продвинутых "юзверей" таких проблем нет.

Добавлено через 7 минут
кстати ещё для создания всяких скриптов можно использовать прогу Sign of Mystery (вроде так)
в ней конструируешь нужную тебе последовательность команд и сохраняешь в виде exe-шника, который потом можно ещё и упаковать upx-ом.
Получается неплохо.


Ну почему он жулик? Человек умеет жить!
"Берегись автомобиля!", 1966

Последний раз редактировалось бYжяй; 17.08.2007 в 08:19.. Причина: Сообщение объединено с предыдущим
бYжяй вне форума Отправить личное сообщение для бYжяй
Вверх
Ответить с цитированием
Старый Добавлено: 18.08.2007, 03:26
  (#12)
Leo
Гость
 
Аватар для Leo

Подмигивание

Ты мне очень помог!Великое тебе Пасиба!Только вот че то прогу Sign of Mystery я вообще не могу найти не в одном поисковике,посмотри,вероятно ты сделал опечатку?

Последний раз редактировалось Leo; 18.08.2007 в 03:34..
Вверх
Ответить с цитированием
Старый Добавлено: 20.08.2007, 07:29
  (#13)
бYжяй
Наблюдающий
Пользователь
 
Аватар для бYжяй

По умолчанию

InqSoft Sign 0f Misery
вот ссыла: [Ссылки могут видеть только зарегистрированные пользователи. ]


Ну почему он жулик? Человек умеет жить!
"Берегись автомобиля!", 1966

Последний раз редактировалось бYжяй; 20.08.2007 в 07:43..
бYжяй вне форума Отправить личное сообщение для бYжяй
Вверх
Ответить с цитированием
Старый Добавлено: 21.08.2007, 03:15
  (#14)
Leo
Гость
 
Аватар для Leo

Вопрос

C этим все понятно!А нельзя ли как-нибудь удалить привод из системы через батник какой-то командой(так же,как через диспечер устройств)???
И еще меня интересует команда задержки выполнения последующих команд на n секунд(типа таймера).Где то вычитал,что для этого служит команда choice,но cmd говорит,что это вообще не является командой...

Последний раз редактировалось Leo; 21.08.2007 в 03:25..
Вверх
Ответить с цитированием
Старый Добавлено: 21.08.2007, 11:27
  (#15)
бYжяй
Наблюдающий
Пользователь
 
Аватар для бYжяй

По умолчанию

на счёт первого вопроса, честно говоря пока не знаю, но подумаю (вдруг получится)
а на счёт второго: а зачем тебе задержки? уточни для чего
просто если тебе нужно выполнить последовательно несколько команд, то можно воспользоваться вот этими:
& - выполнять в любом случае (комадна1 & комадна1 & ...)
&& - выполнять в случае успеха предыдущей (комадна1 && комадна1 && ...)
а команда choice используется для организации всяких менюшек


Ну почему он жулик? Человек умеет жить!
"Берегись автомобиля!", 1966
бYжяй вне форума Отправить личное сообщение для бYжяй
Вверх
Ответить с цитированием
Старый Добавлено: 22.08.2007, 02:23
  (#16)
Leo
Гость
 
Аватар для Leo

Подмигивание

Делаю батник,который запуститься вместе с ситемой,сделает свое дело и сразу перезагрузит комп...Надо подождать нескоко секунд шоб комп расчехлился и бат выполнил свое дело,а то задание там непростое...
Вверх
Ответить с цитированием
Старый Добавлено: 23.08.2007, 04:17
  (#17)
Leo
Гость
 
Аватар для Leo

Вопрос

ТЫ говорил,посмотриш как отключить привод через батник... ну что???
Вверх
Ответить с цитированием
Старый Добавлено: 23.08.2007, 06:46
  (#18)
бYжяй
Наблюдающий
Пользователь
 
Аватар для бYжяй

По умолчанию

вобщем... пока ничего.
нашёл вот на сайте MS прогу devcon - консольный интерфейс к диспетчеру задач (весит ~50 кило).
можешь пока с ней поразбираться, если ты умудрился батник пихнуть на этот комп, то такой файлик, думаю, тоже сможешь, а я пока поищу. мне и самому интересно стало.
devcon link: [Ссылки могут видеть только зарегистрированные пользователи. ]


Ну почему он жулик? Человек умеет жить!
"Берегись автомобиля!", 1966
бYжяй вне форума Отправить личное сообщение для бYжяй
Вверх
Ответить с цитированием
Старый Добавлено: 24.08.2007, 02:40
  (#19)
Leo
Гость
 
Аватар для Leo

По умолчанию

Хорошо,порасчехляюсь с этим косольным окошком,а ты пока пробуй вырубить привод...

Последний раз редактировалось Leo; 24.08.2007 в 02:42.. Причина: Сообщение объединено с предыдущим
Вверх
Ответить с цитированием
Старый Добавлено: 26.08.2007, 02:18
  (#20)
Leo
Гость
 
Аватар для Leo

Вопрос

Ну че там с приводом?Я тут переформатировал бат в эксе прогой bat2exe,но exe-шник получается какой-то не очень рабочий...Вообщем будучи эксехой он не выполняет многие команды типа del или start,а вот команда format действует(лично проверял!).Кто нибудь мож обьяснить в чем тут дело и как его сделать рабочим???
Вверх
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Powered by vBulletin® Version 3.8.10
Copyright ©2000 - 2020, vBulletin Solutions, Inc. Перевод: zCarot

Время генерации страницы 0.18178 секунды с 12 запросами