Опасайтесь бездумного применения команды cd %~dp0 без проверки результата выполнения. Теоретически, эта команда должна сменить текущий каталог на каталог, в котором расположен командный файл. Как правило, это работает.
--
Небольшой комментарий к этому тексту из статьи.
Если путь каталога содержит имя диска (как в этом случае), то желательно к аргументам команды cd добавить ключ /d, так как без него эта команда диск не сменит.
Здравствуйте, Геннадий Майко, Вы писали:
ГМ>Здравствуйте, Алексей Александров,
ГМ>ПРЕДУПРЕЖДЕНИЕ
ГМ>Опасайтесь бездумного применения команды cd %~dp0 без проверки результата выполнения. Теоретически, эта команда должна сменить текущий каталог на каталог, в котором расположен командный файл. Как правило, это работает. ГМ>-- ГМ>Небольшой комментарий к этому тексту из статьи. ГМ>Если путь каталога содержит имя диска (как в этом случае), то желательно к аргументам команды cd добавить ключ /d, так как без него эта команда диск не сменит.
Точно. Забыл про это.
It's kind of fun to do the impossible (Walt Disney)
Re[3]: Урок bat-аники
От:
Аноним
Дата:
17.02.06 22:03
Оценка:
Уважаемый ALL!
Помогите советом.Нужно архивировать базу под ДОС 6.2.Главное чтобы менять по желанию период.Как лучше сделать скриптовый язык и батник.Лучше ссылку наготовый скрипт,потому как времени нет.
Заранее благодарен.
Re[4]: Урок bat-аники
От:
Аноним
Дата:
18.02.06 08:31
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Уважаемый ALL! А>Помогите советом.Нужно архивировать базу под ДОС 6.2.Главное чтобы менять по желанию период.Как лучше сделать скриптовый язык и батник.Лучше ссылку наготовый скрипт,потому как времени нет. А>Заранее благодарен.
Что значит менять период?
Дату/время создания архива или вставить дату в имя архива?
Re[5]: Урок bat-аники
От:
Аноним
Дата:
18.02.06 10:33
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Аноним, Вы писали:
А>>Уважаемый ALL! А>>Помогите советом.Нужно архивировать базу под ДОС 6.2.Главное чтобы менять по желанию период.Как лучше сделать скриптовый язык и батник.Лучше ссылку наготовый скрипт,потому как времени нет. А>>Заранее благодарен.
А>Что значит менять период? А>Дату/время создания архива или вставить дату в имя архива?
Нужно иметь две копии одну ежедневную другую например недельной давности или пятидневной.Этот период выбирается произвольно.При этом юзер всегда жмет только одну клавишу.
Re: Урок bat-аники
От:
Аноним
Дата:
01.08.06 11:34
Оценка:
Здравствуйте, Алексей Александров, Вы писали:
Получается что так
rem "%~d1\microsoft\technet\files\WindowsXP-KB917537-x86-ENU.exe"
set pt = %~d1\microsoft\technet\files\
"%pt%WindowsXP-KB917537-x86-ENU.exe"
сделать не получится?
Re[2]: Урок bat-аники
От:
Аноним
Дата:
01.08.06 11:56
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Алексей Александров, Вы писали:
А>Получается что так А>
@echo off
if "%~1"=="" (
echo Usage:
echo %~n0 a.b.c.d
echo %~n0 a b c d
echo.
echo Performs a reverse lookup on IP a.b.c.d.
goto :EOF
)
if "%~4"=="" (
for /F "usebackq tokens=1,2,3,4 delims=." %%a in ('%1') do call :doit %%d.%%c.%%b.%%a
) else (
call :doit %4.%3.%2.%1
)
goto :EOF
:doit
nslookup -type=PTR %1.in-addr.arpa
Здравствуйте, Roman Odaisky, Вы писали:
RO>На .bat'ах Quine делаются и проще
Да это весьма оригинальное решение
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=windows-1251"></HEAD>
<BODY><PRE></PRE></BODY></HTML>
Значит понадобилось усыпить исполнение на некоторое время.
Команды такой по умолчании нет.
Найденые варианты
1. sleep.exe из Windows Resource Kit
2. ping
ping -n [timeout] -w 1 localhost > nul
timeout в секундах
3. WScript.sleep
ECHO WScript.sleep(1000); > %temp%\sleep.js
cscript %temp%\sleep.js
IF EXIST %temp%\sleep.js DEL /Q %temp%\sleep.js
здесь таймаут указывается в мс WScript.sleep([timeout])
4. Обычный цикл
for /L %%b in (1,1,20000) Do @Echo %%b > Nul
тут все подбирается экспериментально.
Какие кто знает ещё варианты?
Да работоспособность на разных вариантах многоликой ОС MS Windows не исследовалась, так как нужна работа только под XP.
ЗЫ: маленький этюдик такой
Здравствуйте, UFB, Вы писали:
RO>>На .bat'ах Quine делаются и проще
UFB>Да это весьма оригинальное решение UFB>
UFB><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
UFB><HTML><HEAD>
UFB><META http-equiv=Content-Type content="text/html; charset=windows-1251"></HEAD>
UFB><BODY><PRE></PRE></BODY></HTML>
UFB>
Это overservice Надо было сделать просто Content-Type: text/plain
Даже не знаю, в какой форум писать, по этому пишу здесь:
Есть ли возможность перенаправить стандартный вывод в файл в формате Unicode (например, dir >…)?
Дело в том, что вывод в консоль точно идет в Unicode, но для этого надо установить соответствующий шрифт (Lucida Console например), а сохранить в первоначальном виде в файл это не удается…