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

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

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

touch index.html app.js style.css

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


当前回答

从Windows 10上的Visual Code Studio的终端,这是我创建一个新文件的方法:

type > hello.js
echo > orange.js
ni > peach.js

其他回答

在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(见评论)

最简单的解决方案是:

。> myfile.txt

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

其他的答案都少了些什么。Linux touch命令有一个-t选项,它允许您将最后修改的时间设置为任意日期和时间,而不仅仅是当前时间。

将filename.txt的修改日期设置为午夜后30分钟的2012年12月20日。

touch -t 201212210030 filename.txt

要在Windows中获得相同的效果,你需要在PowerShell中,这不能在Cmd中完成。

修改filename.txt文件的创建日期/时间戳:

(Get-Item "D:\Test\filename.txt").CreationTime=("21 December 2012 00:30:00")

修改文件名.txt文件的最后写入日期/时间戳:

(Get-Item "D:\Test\filename.txt").LastWriteTime=("21 December 2012 00:30:00")

更改文件名.txt文件的最后一次访问日期/时间戳:

(Get-Item "D:\Test\filename.txt").LastAccessTime=("21 December 2012 00:30:00")

使用类型而不是触摸

type YOUR_FILE_NAME

但是,它仅限于单个文件

在windows Power Shell上,可以使用以下命令:

New-Item <filename.extension>

or

New-Item <filename.extension> -type file

注意:New-Item可以替换为它的别名ni