<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ralf Eisenreich &#187; batch</title>
	<atom:link href="http://sqlblog.de/blog/tag/batch/feed/" rel="self" type="application/rss+xml" />
	<link>http://sqlblog.de/blog</link>
	<description>SQLBlog.DE &#124; ..things to remember</description>
	<lastBuildDate>Mon, 09 Apr 2012 07:11:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Batch Script: merge recent files</title>
		<link>http://sqlblog.de/blog/2006/08/batch-script-merge-recent-files/</link>
		<comments>http://sqlblog.de/blog/2006/08/batch-script-merge-recent-files/#comments</comments>
		<pubDate>Sun, 20 Aug 2006 08:26:33 +0000</pubDate>
		<dc:creator>Ralf</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[batch]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://blog.ralf-eisenreich.de/blog/index.php/2006/08/20/batch-script-append-recent-files/</guid>
		<description><![CDATA[Um beispielsweise nach einem Download alle heutigen Dateien in eine zu packen (aggregieren), kann folgendes Batch-Script verwendet werden: :: delete...]]></description>
			<content:encoded><![CDATA[<p>Um beispielsweise nach einem Download alle heutigen Dateien in eine zu packen (aggregieren), kann folgendes Batch-Script verwendet werden:</p>
<p><code><br />
:: delete old aggregation file<br />
del /q main.txt<br />
:: delete all files from tmp folder<br />
del /q .\tmp\*<br />
:: get current date<br />
for /f "tokens=1,2" %%u in ('date /t') do set d=%%v<br />
set timestr=%d:~0,2%-%d:~3,2%-%d:~6,4%<br />
:: collect new files with current date (today) in temporary folder<br />
XCOPY * .\tmp\ /D:%timestr% /Y<br />
:: append new files to file main.txt<br />
for /f "delims=" %%x in ('dir /od /a-d /b .\tmp\*') do type %%x >>main.txt<br />
</code></p>
<p>Hierbei wird erstmal die Aggregations-Datei main.txt sowie der Inhalt des tmp-Ordners geloescht. Danach werden mit dem heutigem Datum als Parameter per xcopy die neuen dateien in den tmp-Ordner kopiert. Der Inhalt des tmp-Ordners wird dann in chronologischer Reihenfolge per append in die Aggregationsdatei main.txt geschrieben.</p>
]]></content:encoded>
			<wfw:commentRss>http://sqlblog.de/blog/2006/08/batch-script-merge-recent-files/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Batch Script: current date</title>
		<link>http://sqlblog.de/blog/2006/08/batch-script-current-date/</link>
		<comments>http://sqlblog.de/blog/2006/08/batch-script-current-date/#comments</comments>
		<pubDate>Sun, 20 Aug 2006 08:17:30 +0000</pubDate>
		<dc:creator>Ralf</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[batch]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://blog.ralf-eisenreich.de/blog/index.php/2006/08/20/batch-script-current-date/</guid>
		<description><![CDATA[Um das heutige Datum in einem Batch-Script abzufragen, kann man folgenden Code verwenden: :: get current date for /f "tokens=1,2"...]]></description>
			<content:encoded><![CDATA[<p>Um das heutige Datum in einem Batch-Script abzufragen, kann man folgenden Code verwenden:</p>
<p><code>:: get current date<br />
for /f "tokens=1,2" %%u in ('date /t') do set d=%%v<br />
set dateStr=%d:~0,2%-%d:~3,2%-%d:~6,4%<br />
echo %dateStr%</code></p>
]]></content:encoded>
			<wfw:commentRss>http://sqlblog.de/blog/2006/08/batch-script-current-date/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>FTP-Scripting unter DOS/Windows</title>
		<link>http://sqlblog.de/blog/2006/06/ftp-scripting-unter-doswindows/</link>
		<comments>http://sqlblog.de/blog/2006/06/ftp-scripting-unter-doswindows/#comments</comments>
		<pubDate>Thu, 29 Jun 2006 04:44:38 +0000</pubDate>
		<dc:creator>Ralf</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[batch]]></category>
		<category><![CDATA[dos]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://blog.ralf-eisenreich.de/blog/index.php/2006/06/29/ftp-scripting-unter-doswindows/</guid>
		<description><![CDATA[Unter DOS bzw. Windows kann man den Download von einzelnen oder mehreren Dateien auf folgende Weise automatisieren: Dazu einfach folgenden...]]></description>
			<content:encoded><![CDATA[<p>Unter DOS bzw. Windows kann man den Download von einzelnen oder mehreren Dateien auf folgende Weise automatisieren:</p>
<p>Dazu einfach folgenden Code als <em>Batch-Datei</em> mit der Endung <strong>.bat</strong> abspeichern.</p>
<p><code>@ECHO OFF<br />
:: Check if the password was given<br />
IF "%1"=="" GOTO Syntax<br />
:: go to the right download location<br />
cd C:\<br />
:: open ftp connection<br />
> ftp-script.ftp ECHO open 100.200.30.40<br />
:: enter user name<br />
>> ftp-script.ftp ECHO user<br />
:: enter password<br />
>> ftp-script.ftp ECHO %1<br />
:: go one folder containing files<br />
>> ftp-script.ftp ECHO cd ..<br />
:: eliminate prompting<br />
>> ftp-script.ftp ECHO prompt n<br />
:: get multiple files<br />
>> ftp-script.ftp ECHO mget *<br />
:: get single file<br />
:: >> ftp-script.ftp ECHO get filename<br />
:: quit ftp program<br />
>> ftp-script.ftp ECHO bye<br />
:: start ftp program with previous commands<br />
> ftp-protocol.txt %windir%\system32\ftp.exe -s:ftp-script.ftp<br />
:: go to End<br />
GOTO End</p>
<p>:Syntax<br />
ECHO Usage: %0 password</p>
<p>:End<br />
</code></p>
<p>Mit diesem Script kann man automatisch mehrere FTP-Dateien herunterladen, wenn man dieses von einem Scheduler starten laesst. Ausserdem werden alle Ausgaben in einer Protokolldatei erfasst und das Passwort nicht in dem Script gespeichert, sondern es muss beim Aufruf als Argument uebergeben werden.<br />
Moechte man bei mehreren Dateien nur jeweils die noch nicht geladenen Dateien herunterladen, wird es etwas schwieriger, da das FTP im Lieferumfang von DOS/Windows keinen Operator anbietet der dieses Verhalten ermoeglicht. Es werden immer alle Dateien ueberschrieben, sofern sie kein Read-Only Attribut besitzen.<br />
Man kann aber im Script nach jedem Download die Dateien als Read-Only setzen und somit den erneuten Download verhindern, wobei folgender Code eingefÃ¼gt werden muss:</p>
<p><code>>> ftp-protocol.txt ECHO set *.* files as read-only<br />
>> ftp-protocol.txt attrib +R *.*</code></p>
<p>Moechte man sich zusaetzlich noch anzeigen lassen, ob ueberhaupt Dateien herunter geladen worden sind, kann man folgende Prozedur verwenden:</p>
<p><code>:: check successful loading<br />
type ftp-protocol.txt | find /c "Sending data" >> ftp-protocol.txt<br />
if errorlevel 1 GOTO Error<br />
GOTO End<br />
: Error<br />
>> ftp-protocol.txt ECHO ERROR: No files were downloaded!<br />
: End</code></p>
]]></content:encoded>
			<wfw:commentRss>http://sqlblog.de/blog/2006/06/ftp-scripting-unter-doswindows/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

