質問: powershellで空のファイルを作成するためのlinuxの `touch`と同等ですか? powershellにはtouchと同等のものがありますか?たとえばlinuxでは、次のコマンドを呼び出すことで新しい空のファイルを作成できます。touch filename windowsでは、これはかなり厄介です。通常、私は単にメモ帳の新しいインスタンスを開き、空のファイルを保存します。では、powershellにこれを行うためのプログラム的な方法はありますか?私はtouchの振る舞いを正確に一致させることを検討しているのではなく、単に空のファイルを作成するための最も簡単な方法を見つけることを目的としています。
回答: 「touch」は 承認されたpowershell動詞 ではないため、「write-file」という名前を使用しました。私はまだタッチとしてそれをエイリアスします。touch.psm1<# .synopsis creates a new file or updates the modified date of an existing file. .parameter path the path of the file to create or update. #> function write-file { [cmdletbinding()] param( [parameter( mandatory=$true, position=1 )] [string] $path, [switch] $whatif, [system.management.automation.pscredential] $credential ) $useverbose = $pscmdlet.myinvocation.boundparameters['verbose'].ispresent -eq $true $usedebug = $pscmdlet.myinvocation.boundparameters['debug'].ispresent -eq $true $timestamp = get-date if( -not [system.management.automation.wildcardpattern]::containswildcardcharacters( $path ) ) { new-item -itemtype:file -verbose:$useverbose -debug:$usedebug -whatif:$whatif -credential $credential -path $path -erroraction silentlycontinue -confirm:$false | out-null } set-itemproperty -verbose:$useverbose -debug:$usedebug -whatif:$whatif -credential $credential -path $path -name lastwritetime -value:$timestamp -confirm:$false | out-null } set-alias -name touch -value write-file export-modulemember -function write-file export-modulemember -alias touch 使用法:import-module ./touch.psm1 touch foo.txt サポート: 他のディレクトリ内のパス ネットワークパスのcredential verbose、debug、およびwhatifのフラグ ワイルドカード(タイムスタンプ更新のみ)