IMAGE IMAGE

Martin Wodrichs Homepage

IMAGE IMAGE IMAGE IMAGE IMAGE
IMAGE IMAGE IMAGE IMAGE IMAGE

Homepage:




 Home
 Ueber mich
 Wissenschaft
 Linkliste
Gastbuch
 Mailboxen
 Software
 Vermischtes

Impressum Datenschutzerklärung



IMAGE



Letzte Änderung:
25.12.2023



IMAGE IMAGE

ZurueckDokumentation zu Touch 1.8.0
(c) 2003-2023 by Martin Wodrich


Inhaltsverzeichnis

1.   Einleitung
2.  
Systemvoraussetzungen
3.  
Dateiparameter
3.1
Eindeutige Dateien
3.2
Wildcards
3.3
Verzeichnismakros
3.4
Spezielle Dateien
4.  
Dateiparameter mit besonderer Funktion
4.1.
Referenzdatei
4.2
Jobdatei
5.  
Datum/Uhrzeit festlegen
6.  
Besondere Funktionen
6.1
Simulationslauf
6.2
Automatische Großschreibung
6.3
ZConnect-PUFFER erstellen
6.4
Interaktiver Modus
6.5
md5-Summen
6.6 sha1-Summen
7.  Betriebsystemabhängigkeiten
7.1
Lange Dateinamen
7.2
Beenden von Touch
A. 
Lizenz- und Nutzungsbedingungen

1. Einleitung

Touch dient dazu, das Dateidatum mitsamt Uhrzeit auch von mehr als einer Datei gleichzeitig anzupassen. Hierbei kennt mein Touch einige spezielle Kniffe, die andere Implementierungen oft nicht haben.
Alle bearbeiteten Dateien werden mit vollständigem Pfad ausgegeben.

2. Systemvoraussetzungen

Touch ist portabel geschrieben. Es kann daher für fast jedes
Betriebsystem compiliert werden.

Derzeit sind folgende Versionen verfügbar:
- DOS16 (mit einschaltbarer LFN-Unterstützung)
- DOS16 (ohne LFN-Unterstützung)
- DPMI  (ohne LFN-Unterstützung)
- WIN16 (ohne LFN-Unterstützung)
- WIN32 (mit LFN-Unterstützung)
- WIN64/AMD64 (mit LFN-Unterstützung)
(weitere Betriebssysteme sind möglich)

3. Dateiparameter
3.1 Eindeutige Dateien

Touch kann mit fast beliebig vielen Dateien als Parameter aufgerufen werden. Diese Dateien können mit und auch ohne vollständigen Pfad eingegeben werden.
Die Schreibweise (Groß- oder Kleinschreibung) aller Angaben - ob Datei-, Verzeichnisnamen oder Parameterbezeichner ist beliebig.

Beispiel:
touch Datei1 C:\Datei2 d:\verz\datei3

Wichtig:
Wird ein Dateiname angegeben, der entweder im aktuellen Verzeichnis
(bei fehlender Dateiangabe) bzw. an der angegebenen Stelle nicht existiert, so wird die Datei neu angelegt.

3.2 Wildcards

Als Dateiparameter sind ebenfalls sogenannte Wildcards erlaubt. Diese allerdings ausschließlich im Dateinamen, nicht aber in Verzeichnisangaben.

Beispiel:
touch datei? c:\cvs\*.*

Bei der Verwendung von Wildcards werden keine Dateien neu angelegt wie das u.U. bei eindeutigen Dateien geschehen kann.

3.3 Verzeichnismakros

Touch besitzt eine sehr umfassende Möglichkeit, um Verzeichnisangaben in Kurzform anzugeben.

Es gibt folgende Verzeichnisangabenmakros:

#: Auf allen Laufwerken Touch anwenden.
Touch wird diese Angabe in bis zu 26 Einzelangaben auflösen.
Jedes Laufwerk, das als beschreibbar gefunden wird, wird
bearbeitet bzw. Durchsucht.
Aufgrund des Testes werden Diskettenlaufwerke einen kurzen
Seek durchführen, wenn keine Diskette eingelegt ist.


\#\ Bedeutet, dass Dateien in jedem Verzeichnis gesucht werden, das
ein direktes Unterverzeichnis des Verzeichnisses ist, welches
links von diesem Makro angegeben ist. Zusätzlich wird auch noch
das Verzeichnis durchsucht, welches sich ergeben würde, wenn
dieses Makro nicht eingegeben würde.


\##\ Wie \#\, aber zusätzlich auch alle Unterverzeichnisse der
direkten Unterverzeichnisse. Und davon wieder alle
Unterverzeichnisse. (Rekursive Suche nach allen Dateien
unterhalb eines Verzeichnisses)


# (Angabe ohne weitere Angaben)
Dieses Makro wird einfach nur nach .\#\*.* aufgelöst. Dies
bedeutet also alle Dateien im aktuellen Verzeichnis sowie in
allen direkten Unterverzeichnissen.


## (Angabe ohne weitere Angaben)
Dieses Makro wird nach .\##\*.* aufgelöst. Es werden also alle
Dateien im und unterhalb des aktuellen Verzeichnisses
bearbeitet.


### (Angabe ohne weitere Angaben)
Dieses Makro wird nach #:\##\*.* aufgelöst. Damit werden also
alle Dateien erfasst, die überhaupt erreichbar sind.


Bei der Verwendung von Verzeichnismakros wird das Auflösen eines
solchen als "Expandiere Makro:" gefolgt von der Eingabe angezeigt.

Achtung:
Komplexere Makros durchlaufen mehrfach den Makroprozessor von Touch.
Dies schlägt sich in mehrfachen Ausgaben von "Expandiere Makro:"
nieder. Dabei bezeichnet jede Ausgabe einen Schritt beim Auflösen.
Insbesondere alle Makros mit 2 oder mehr Rautezeichen # können
beliebig viele Zeilen erzeugen.
Der Makroprozessor löst iterativ die eingegebenen Makros auf.

Bei der Verwendung von Verzeichnismakros können auch Dateien neu
angelegt werden, solange die Dateiangabe eindeutig ist und keine Wildcards enthält.

3.4 Spezielle Dateien

Touch verändert normalerweise versteckte Dateien sowie Systemdateien nicht, sondern nur durch direkte Angabe des Parameters.
mit /S können auch Systemdateien erfasst werden.
mit /H auch versteckte Dateien.

Diese Angaben können auch beide zusammen benutzt werden.

4. Dateiparameter mit besonderer Funktion
4.1. Referenzdatei

Touch unterstützt die Verwendung einer Referenzdatei. Dies ist eine Datei, deren Dateidatum und Uhrzeit auf alle anderen angegebenen Dateien kopiert wird. Es ist dabei egal, an welcher Stelle der Parameter-Liste die Referenzdatei angegeben wird. Sie bezieht sich immer auf alle angegebenen Dateien. Die Referenzdatei wird durch ein vorgestelltes /R= als solche kenntlich gemacht.
(Als alias für /R= kann ebenso auch /F= für die Angabe der Referenzdatei genommen werden).

Beispiel:
touch datei1 /R=datei2 datei3
(Kopiert das Dateidatum und die Uhrzeit von Datei2 auf Datei1 und Datei3)

4.2 Jobdatei

Die zu touchenden Dateien müssen nicht unbedingt als Parameter an Touch übergeben werden. Sie können auch als Liste in einer Datei geschrieben sein. Diese Datei wird Touch dann mit vor dem Dateinamen gestelltem /J= als solche kenntlich gemacht.
Es existieren die gleichen Möglichkeiten bezüglich Makros und Wildcards wie bei der Übergabe als Parameter. Auch die Jobdatei kann an beliebiger Stelle in der Parameterliste stehen.

5. Datum/Uhrzeit festlegen

Mit /t=Uhrzeit kann eine Uhrzeit übergeben werden, welche dann bei allen als Parameter übergebenen Dateien gesetzt wird. Die Angabe einer Uhrzeit geschieht im Format hh:mm:ss, also Stunde, Minute und Sekunde jeweils durch Doppelpunkt getrennt.
Mit /d=Datum kann entsprechend ein Datum übergeben werden. Dieses wird dabei im Format tt.mm.yy oder tt.mm.yyyy eingegeben. Das heißt Tag, Monat und Jahr werden durch einen Punkt getrennt. Das Jahr kann zweistellig, aber auch 4-stellig eingegeben werden.
Bei diesen Angaben wird ein Plausibilitätstest gemacht, bevor sie auf irgentwelche Dateien angewendet werden. Sind diese Angaben nicht plausibel, so bricht Touch ab. Ebenso wenn Referenzdatei und Datum/Uhrzeit gesetzt wird.
Wird nur Datum oder nur Uhrzeit vorgegeben, so wird die fehlende Angabe an den Dateien nicht verändert. Fehlt jegliche Angabe von Datum und Uhrzeit so wird das aktuelle Datum und die aktuelle Zeit bei Programmstart benutzt. Läuft Touch also mehrere Sekunden so haben dennoch alle Dateien die gleiche Uhrzeit und Datumsangabe.

6. Besondere Funktionen
6.1 Simulationslauf

Wird der Parameter /V (Vortäuschmodus) benutzt, so wird Touch alles ausgeben, was es bei einem regulären Lauf ausgeben würde, allerdings keine Veränderungen an Dateidatum/Uhrzeit hinterlassen. Insbesondere werden auch alle Makros aufgelöst. Dies bedeutet allerdings, dass der Seek auf allen Diskettenlaufwerken ebenfalls durchgeführt wird!!!

6.2 Automatische Großschreibung

Mit dem optionalen Parameter /G kann erreicht werden, dass alle Dateien nach dem Touchlauf in Großbuchstaben im Verzeichnis stehen.
Der Parameter /K sorgt dafür, dass das Dateidatum und die Dateizeit nicht verändert wird. Dieser Parameter ist nur bei Verwendung des Parameters /G wirksam, sonst wird er ignoriert.

6.3 ZConnect-PUFFER erstellen

Normalerweise erstellt Touch Dateien mit 0 Bytes Größe. Wird das Argument /ZC angegeben, so erstellt Touch stattdessen Zconnect-PUFFER mit einer Testnachricht. Dabei enthält jede Datei exakt eine Nachricht, mit eindeutiger Message-ID.

6.4 Interaktiver Modus

Wird der Parameter /I angegeben so liest Touch Informationen über
zu bearbeitende Dateien über Standard-Input.

6.5 md5-Summen

Wird der Parameter /md5 angegeben, so erstellt Touch im aktuellen
Verzeichnis eine Datei md5sums, mit den md5-Summen aller angefassten
Dateien.

6.6 sha1-Summen

Wird der Parameter /sha1 angegeben, so erstellt Touch im aktuellen
Verzeichnis eine Datei sha1sums, mit den sha1-Summen aller angefassten
Dateien.

7. Betriebsystemabhängigkeiten
7.1 Lange Dateinamen

Touch unterstützt lange Dateinamen (LFNs) sofern das Betriebsystem diese anbietet.
Für DOS-Realmode (DOS16) muß diese Unterstützung derzeit per Argument
(/LFN) eingeschaltet werden. Es existiert mit TOUCHNLF.ZIP aber auch eine Version ganz ohne LFN-Unterstützung.
Für 16 Bit DOS-Protected-Mode (DPMI) und Win16 ist die Unterstützung nicht verfügbar, da Windows 16 Bit dies nicht bietet und die Unterstützung für 16 Bit DOS-Protected-Mode nicht sicher ist. Alle 32 Bit Compilate (DOS32 und WIN32) können automatisch lange Dateinamen nutzen.

7.2 Beenden von Touch

Normalerweise beendet sich Touch sobald es mit seiner Aufgabe fertig ist. Unter WIN16 kann mit dem Argument /nc dies verhindert werden, da unter dieser Platform Touch in einem eignen Fenster läuft und sich dieses unter Umständen zu schnell schließt.
Dieser Parameter existiert nur für WIN16.

A. Lizenz- und Nutzungsbedingungen

Touch ist Freeware.

Grundsätzlich gilt: Die Datei Touch.exe bzw. Touch.pas darf nur zusammen mit diesem Text verbreitet werden.


[Home] [Ueber mich] [Wissenschaft] [Linkliste] [Gastbuch] [Mailboxen] [Software] [Vermischtes]