Windows相当于“touch”(即创buildindex.html的node.js方法)
在Windows机器上,我得到这个错误
'touch' is not recognized as an internal or external command, operable program or batch file.
当我按照说明来做:
touch index.html app.js style.css
有没有使用“触摸”的Windows相当于? 我是否需要手动创build这些文件(并修改它们以更改时间戳)才能实现这种命令? 这似乎不是很… node-ish …
在cmd窗口中input:
type nul > your_file.txt
这会创build0个字节的your_file.txt文件。
使用echo命令的另一种方法是
echo.>your_file.txt
回声。 – 将在其中创build一个空行的文件。
Windows本身不包含touch
命令。
您可以使用任何可用的公共版本,也可以使用您自己的版本。 将此代码保存为touch.cmd
并将其放置在您的path中的某个位置
@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
它将迭代它的参数列表,并为每个元素(如果存在)更新文件时间戳,否则,创build它。
你可以使用这个命令:ECHO >> filename.txt
它将在当前文件夹中创build一个具有给定扩展名的文件。
更新:
对于空文件使用: copy NUL filename.txt
在Windows Powershellterminal中,不需要命令 – 既不是type
也不是echo
– 来模拟Unix / Mac OS X的“touch”命令。 只需使用以下简写:
$null > filename
这将在您当前的位置创build一个名为“文件名”的空文件。 使用您可能需要的任何文件扩展名,例如'.txt'。
来源: https : //superuser.com/questions/502374/equivalent-of-linux-touch-to-create-an-empty-file-with-powershell (查看评论)
在您的命令行中使用以下命令:
fsutil file createnew filename requiredSize
参数信息如下:
fsutil – 文件系统实用程序(您正在运行的可执行文件)
文件 – 触发文件操作
createnew – 要执行的操作(创build一个新文件)
文件名 – 将字面上的文件的名称
requiredSize – 将在创build的文件中以字节为单位分配文件大小
您也可以在Windows命令窗口(cmd.exe)中使用copy con [filename] :
C:\copy con yourfile.txt [enter] C:\CTRL + Z [enter] //hold CTRL key & press "Z" then press Enter key. ^Z 1 Files Copied.
这将在本地目录中创build一个名为yourfile.txt
的文件。
您可以使用以下命令复制touch的function:
$>>filename
这样做是试图执行一个名为$
的程序,但如果$
不存在(或不是产生输出的可执行文件),则不会产生输出。 它本质上是一个function的破解,但是你会得到以下错误信息:
“$”不被识别为内部或外部命令,可操作程序或batch file。
如果你不想要错误消息,那么你可以做两件事之一:
type nul >> filename
要么:
$>>filename 2>nul
type
命令尝试显示nul的内容,它在读取时什么也不做,而是返回一个EOF(文件的结尾)。
2>nul
将错误输出(输出2)发送到nul(写入时忽略所有input)。 很显然,第二个命令( 2>nul
)被type
命令冗余,因为type
更快。 但至less你现在有select和知识。