Windowsコマンド(fsutil file setZeroData)


アニメ『みにとじ』

「刀使ノ巫女」のキャラが小さくなって再登場です。「刀使ノ巫女」のおさらいから始まるから、なんだか、また最初から見たくなってしまいますね。なんだかんだ1話が1番面白いですが。ゲームもあるようですし、まだまだとじみこで楽しめそうです。

今回は、setZeroDataを使います。
名前からしてファイルにゼロを設定してくれるのでしょう。
まずは、実験用ファイルの作成。ゼロ以外のデータがよいので、文字列を適当に入れておきます。

PS C:\Users\takk2\tmp> dir
PS C:\Users\takk2\tmp> echo HELLO > test.xt
PS C:\Users\takk2\tmp>

ファイルの内容を確認。

PS C:\Users\takk2\tmp> type test.txt
HELLO
PS C:\Users\takk2\tmp>

バイナリでも確認しておきます。

PS C:\Users\takk2\tmp> gc -encoding byte test.txt
255
254
72
0
69
0
76
0
76
0
79
0
13
0
10
0
PS C:\Users\takk2\tmp>

おっと、しまった。PowerShell上でechoを使うと、こうなるのを忘れてました。
cmd上で実行します。

PS C:\Users\takk2\tmp> exit

C:\Users\takk2\tmp>echo HELLO > test.txt

C:\Users\takk2\tmp>powershell
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

PS C:\Users\takk2\tmp> gc -encoding byte test.txt
72
69
76
76
79
32
13
10
PS C:\Users\takk2\tmp>

改行の前にスペース(32)が入ってしまいましたが、およそ意図したファイルになりました。
では、setZeroDataを使ってみましょう。

PS C:\Users\takk2\tmp> fsutil file setzerodata offset=1 length=2 test.txt
ゼロ データが変更されました
PS C:\Users\takk2\tmp>

さて、ファイルの内容はどのように変化しているでしょうか。

PS C:\Users\takk2\tmp> gc -encoding byte test.txt
72
0
0
76
79
32
13
10
PS C:\Users\takk2\tmp>

offsetは、0始まりなんですね。
このファイルをtypeコマンドで実行すると、どのように表示されるでしょうか。

PS C:\Users\takk2\tmp> type test.txt
H  LO
PS C:\Users\takk2\tmp>

なるほど、0に変更した部分は、typeコマンドでは空白で表示されるようです。

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA