mv は1TBのファイルも一瞬で動かせる

mv でファイルを移動すると、一瞬で完了しますよね。でも考えてみてください。もしファイルが1TBあったら? 実は、同じファイルシステム(パーティション)の中の移動なら、1TBでも一瞬です。
なぜなら mv は、ファイルの中身を実際にコピーしているわけではないから。やっていることは「ファイルの住所(パス)を書き換える」だけ。本の中身を丸ごと別の棚に運ぶのではなく、図書館の目録カードを書き換えるようなものです。
ただし条件があります。別のファイルシステムへの移動は話が違う。別のディスクや別のパーティションへ動かすときは、中身を丸ごとコピーしてから元を削除する動作になるので、ファイルサイズに比例して時間がかかります。
同じ mv コマンドなのに、移動先によって内部の動作がまったく違う。こういう裏側の仕組みを知ると、ターミナルがもっと面白くなります。
コマンドの表面だけでなく「なぜ速いのか」を考える。それがエンジニア的な視点です。
