在windows机器上,我得到这个错误

“touch”不能被识别为内部或外部命令、可操作程序或批处理文件。

我遵循这些指令,似乎是linux特定的,但在标准的windows命令行上,它不是这样工作的:

touch index.html app.js style.css

windows中是否有类似于linux / mac os / unix世界中的'touch'命令?为了实现这类命令,我是否需要手工创建这些文件(并修改它们以更改时间戳)?我正在使用节点,这似乎不是很…node-ish……


当前回答

最简单的解决方案是:

。> myfile.txt

你会得到一个错误,但是文件创建了:

其他回答

您可以使用ECHO >> filename.txt命令

它将在当前文件夹中创建一个具有给定扩展名的文件。

更新:

对于空文件使用:复制NUL filename.txt

如果你在电脑上安装了Cygwin,你可以简单地使用提供的可执行文件进行触摸(也可以通过windows命令提示符):

C:\cygwin64\bin\touch.exe <file_path>

在你的机器上安装NPM

在命令提示符中运行以下命令。

npm install touch-cli -g

现在你将能够使用触摸cmd。

Windows本身不包含触摸命令。

您可以使用任何可用的公共版本,也可以使用您自己的版本。将此代码保存为touch。CMD并将其放在路径中的某个地方

@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

它将遍历它的参数列表,对于每个存在的元素,更新文件时间戳,否则,创建它。

在Windows Powershell终端中模拟Unix /Mac OS X的“touch”命令不需要任何命令——无论是typenor echo。简单地使用以下简写:

$null > filename

这将在当前位置创建一个名为“filename”的空文件。使用您可能需要的任何文件扩展名,例如:. txt。

来源:https://superuser.com/questions/502374/equivalent-of-linux-touch-to-create-an-empty-file-with-powershell(见评论)