Frage Windows-Äquivalent von 'touch' (d. H. Die Methode node.js zum Erstellen einer index.html)


Auf einem Windows-Rechner bekomme ich diesen Fehler

'touch' is not recognized as an internal or external command, operable program or batch file.

wenn ich dem folge Anleitung machen:

touch index.html app.js style.css

Gibt es ein Windows-Äquivalent zur Verwendung von "Touch"? Muss ich diese Dateien manuell erstellen (und sie ändern, um den Zeitstempel zu ändern), um diese Art von Befehl zu implementieren? Das scheint nicht sehr ... node-ish ...


75
2018-05-03 07:20


Ursprung


Antworten:


In cmd Fenster Typ:

type nul > your_file.txt

Dies erstellt 0 Bytes Ihre Datei_file.txt.

Eine andere Möglichkeit, es zu benutzen Echo Befehl ist

echo.>your_file.txt

Echo. - erstellt Datei mit einer leeren Zeile darin.


123
2018-06-10 20:43



Windows enthält nativ kein touch Befehl.

Sie können eine der verfügbaren öffentlichen Versionen verwenden oder Sie können Ihre eigene Version verwenden. Speichern Sie diesen Code als touch.cmd und platziere es irgendwo auf deinem Weg

@echo off
    setlocal enableextensions disabledelayedexpansion

    (for %%a in (%*) do if exist "%%~a" (
        pushd "%%~dpa" && ( copy /b "%%~nxa"+,, & popd )
    ) else (
        type nul > "%%~fa"
    )) >nul 2>&1

Es wird über die Argumentliste iterieren, und für jedes Element, wenn es existiert, aktualisieren Sie den Dateizeitstempel, sonst erstellen Sie ihn.


37
2018-05-03 20:27



Sie können diesen Befehl verwenden: ECHO >> Dateiname.txt

Es wird eine Datei mit der angegebenen Erweiterung im aktuellen Ordner erstellt.

AKTUALISIEREN:

Für eine leere Datei verwenden Sie: kopiere NUL Dateiname.txt


22
2018-02-23 21:42



Kein Befehl - weder typeNoch echo- Ist notwendig, um den "Touch" -Befehl von Unix / Mac OS X in einem Windows PowerShell-Terminal zu emulieren. Verwenden Sie einfach die folgende Kurzschrift:

$null > filename

Dadurch wird eine leere Datei namens "Dateiname" an Ihrem aktuellen Speicherort erstellt. Verwenden Sie eine beliebige Dateinamenerweiterung, die Sie möglicherweise benötigen, z. '.txt'.

Quelle: https://superuser.com/questions/502374/equivalent-of-linux-touch-to-create-an-empty-file-with-powershell (Zeige Kommentare)


5
2018-03-15 10:17



Sie können die Funktionalität von touch mit dem folgenden Befehl replizieren:

$>>filename

Was dies tut, ist Versuche, ein aufgerufenes Programm auszuführen $, aber falls $ existiert nicht (oder ist keine ausführbare Datei, die eine Ausgabe erzeugt), dann wird keine Ausgabe von ihr erzeugt. Es ist im Wesentlichen ein Hack auf die Funktionalität, aber Sie erhalten folgende Fehlermeldung:

'$' wird nicht als interner oder externer Befehl erkannt,   ausführbares Programm oder Batch-Datei.

Wenn Sie die Fehlermeldung nicht möchten, können Sie zwei Dinge tun:

type nul >> filename

Oder:

$>>filename 2>nul

Das type Der Befehl versucht, den Inhalt von nul anzuzeigen, der nur einen EOF (Dateiende) zurückgibt, wenn er gelesen wird.

2>nul sendet eine Fehlerausgabe (Ausgabe 2) an nul (die beim Schreiben alle Eingaben ignoriert). Offensichtlich der zweite Befehl (mit 2>nul) wird durch die type Befehl, da es schneller zu tippen ist. Aber zumindest haben Sie jetzt die Möglichkeit und das Wissen.


4
2017-07-01 09:40



Verwenden Sie den folgenden Befehl in der Befehlszeile:

fsutil file createnew filename  requiredSize

Die Parameter info wie folgt:

fsutil - Dateisystem-Dienstprogramm (die ausführbare Datei, die Sie gerade ausführen)

Datei - löst eine Dateiaktion aus

createnew - die auszuführende Aktion (eine neue Datei erstellen)

Dateiname - wäre buchstäblich der Name der Datei

requiredSize - würde in der erstellten Datei eine Dateigröße in Bytes zuweisen


3
2018-05-03 07:44



Sie können auch verwenden kopiere con [Dateiname] in einem Windows-Befehlsfenster (cmd.exe):

C:\copy con yourfile.txt [enter]
C:\CTRL + Z [enter] //hold CTRL key & press "Z" then press Enter key.
^Z
    1 Files Copied.

Dies wird eine Datei namens erstellen yourfile.txt im lokalen Verzeichnis.


3
2017-09-13 21:08



Die Antwort ist falsch, sie funktioniert nur, wenn die Datei nicht existiert. Wenn die Datei vorhanden ist und die erste Datei keine Aktion ausführt, fügt die zweite Zeile am Ende der Datei eine Zeile hinzu.

Die richtige Antwort ist:

copy /b filename.ext +,,

Ich habe es hier gefunden: https://superuser.com/questions/10426/windows-equivalent-of-the-linux-command-touch/764721#764721


2
2018-03-15 20:04



Einfach, Beispiel mit txt-Datei

echo $null >> filename.txt

1
2018-02-22 20:20



wie erwähnt

echo >> index.html

Es kann jede Datei mit beliebiger Erweiterung sein dann mach

notepad index.html

Dies öffnet Ihre Datei im Notepad Editor


1
2017-07-20 12:42



Ja, Sie können den Knoten für die Berührung verwenden, ich benutze nur das und es funktioniert alles gut in Windows Cmd oder Gitbash

enter image description here


0
2018-04-11 20:09