はじめに
最近、$ touchというLinuxコマンドの魅力に取り憑かれているのですが、
同じことをWindows環境でもできないか?と考え、調べてみました。
この記事でわかること
Windows環境のコンソール(PowerShell, コマンドプロンプト)で、ファイル(0byteファイル)を作成する方法
実行環境
Linux:Ubuntu 20.04
Windows:Windows 10
$ touchとは
ファイルの作成、あるいはタイムスタンプの更新を行うLinuxコマンドです。
例えば、$ touch hogeというコマンドの実行で、
そのディレクトリにhogeというファイルがなければhogeファイルを生成し、
hogeというファイルが存在していれば、タイムスタンプ(最終更新日時)を更新します。
ここでは前者の『そのディレクトリにhogeというファイルがなければhogeファイルを生成』というところに焦点を絞ります。
Windows環境でtouchコマンドに相当するものを使うには?
Windowsで使う標準のターミナルは大きく分けてPowerShell, コマンドプロンプトの2種類がありますが、
Linuxにおける$ touch(からっぽのファイルを作る)と同じことをしようと思うと、
それぞれコマンドが異なります。
PowerShellで$ touchする
New-Itemコマンドを使います。
例:New-Item foo.java
コマンドプロンプト(CMD)で$ touchする
copy nul, あるいはtype nul >を使います。
例
copy nul foo.txt
type nul > foo.txt
補足
copy nulコマンドは読んで字のごとく、本来ファイルのコピーを行うコマンドです。
type nulコマンドは指定したファイルを空にするか、存在しなければその名前のファイルを作成するものです。