Windowsコマンド(fsutil hardlink)(その2)

今回は、hardlink listを使います。
現在のファイルはこれだけ。

C:\Users\takk2\tmp>dir
 ドライブ C のボリューム ラベルがありません。
 ボリューム シリアル番号は 6C92-6118 です

 C:\Users\takk2\tmp のディレクトリ

2019/03/02  13:54    <DIR>          .
2019/03/02  13:54    <DIR>          ..
2019/03/02  13:57                13 a.txt
2019/03/02  13:57                13 b.txt
               2 個のファイル                  26 バイト
               2 個のディレクトリ  190,840,877,056 バイトの空き領域

C:\Users\takk2\tmp>

パラメータにファイル名を与えます。

C:\Users\takk2\tmp>fsutil hardlink list a.txt
\Users\takk2\tmp\b.txt
\Users\takk2\tmp\a.txt

C:\Users\takk2\tmp>

a.txtを指定したら、b.txtも表示されました。
どうやらハードリンクしているファイルが表示されているようです。
さらにハードリンクを増やすとどうなるでしょう。

C:\Users\takk2\tmp>fsutil hardlink create c.txt b.txt
C:\Users\takk2\tmp\c.txt <<===>> C:\Users\takk2\tmp\b.txt のハードリンクが作成されました

C:\Users\takk2\tmp>
C:\Users\takk2\tmp>fsutil hardlink list b.txt
\Users\takk2\tmp\b.txt
\Users\takk2\tmp\a.txt
\Users\takk2\tmp\c.txt

C:\Users\takk2\tmp>

listの表示が増えました。

ハードリンクされていないファイルを増やすとどうなるでしょうか。

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

C:\Users\takk2\tmp>

1.txtというファイルを追加しました。
各File IDを確認してみます。

C:\Users\takk2\tmp>for %i in (*);do fsutil file queryfileid %i

C:\Users\takk2\tmp>fsutil file queryfileid 1.txt
ファイル ID は 0x000000000000000000260000000136e7 です

C:\Users\takk2\tmp>fsutil file queryfileid a.txt
ファイル ID は 0x0000000000000000000b000000017791 です

C:\Users\takk2\tmp>fsutil file queryfileid b.txt
ファイル ID は 0x0000000000000000000b000000017791 です

C:\Users\takk2\tmp>fsutil file queryfileid c.txt
ファイル ID は 0x0000000000000000000b000000017791 です

C:\Users\takk2\tmp>

では、listでa.txtを指定してみます。

C:\Users\takk2\tmp>fsutil hardlink list a.txt
\Users\takk2\tmp\b.txt
\Users\takk2\tmp\a.txt
\Users\takk2\tmp\c.txt

C:\Users\takk2\tmp>

Leave a Reply

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

CAPTCHA