<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD/BAT + KiXtart: два в одном]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=2914&amp;type=atom" />
	<updated>2009-03-12T07:56:03Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=2914</id>
		<entry>
			<title type="html"><![CDATA[CMD/BAT + KiXtart: два в одном]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=20577#p20577" />
			<content type="html"><![CDATA[<p>Способ объединения CMD и Kixtart в одном гибридном файле:<br /></p><div class="codebox"><pre><code>;@echo off
;echo This is CMD-part of script
;kix32 &quot;%~f0&quot;
;goto:eof
&quot;This is Kixtart-part of script&quot;</code></pre></div><p>Построено на том, что cmd точку с запятой воспринимает как пробельный символ, а KiXtart — как комментарий. Метки у них имеют одинаковый синтаксис, но, тем не менее, перед метками cmd можно поставить точку с запятой.<br />Второй способ заключается в использовании многострочного комментария:<br /></p><div class="codebox"><pre><code>:rem /*
@echo off
echo This is CMD-part of script
kix32 &quot;%~f0&quot;
goto:eof
*/
&quot;This is Kixtart-part of script&quot;</code></pre></div><p>Такой способ более наглядный. Метку REM использовать нельзя, и в cmd части не должно встречаться */<br />Ещё один пример. Часть скрипта, написанная на KiXtart, возвращает текущую дату в виде YYYY-MM-DD:<br /></p><div class="codebox"><pre><code>;@for /f %%i in ( &#039;kix32 &quot;%~f0&quot;&#039; ) do @set dt=%%i
;@echo %dt%
;@goto:eof

$=setascii(&quot;on&quot;)
$date = @date
left($date,4)+&quot;-&quot;+substr($date,6,2)+&quot;-&quot;+substr($date,9,2)</code></pre></div><p>Такими способами можно запускать KiXtart скрипты, не ассоциируя их с kix32, т.е. просто запуская командный файл. Возможно, в командном файле удобнее обработать переданные параметры, чтобы далее передать их KiXtart&#039;у (можно даже через переменные среды). Можно сделать что-то вроде библиотеки для cmd, в которой какие-то сложные вещи делает KiXtart.</p><p><em>См. также: <a href="http://forum.script-coding.com/viewtopic.php?id=2886">CMD/BAT + JavaScript: два в одном</a>.</em></p><p>Автор обзора — <strong>Smitis</strong>.</p>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2009-03-12T07:56:03Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=20577#p20577</id>
		</entry>
</feed>
