Opensource.comは8月19日(米国時間)、「Moving files on Linux without mv|Opensource.com」において、Linuxでmvコマンドを使わないでファイルを移動させる方法を紹介した。

ファイルを移動させることができるコマンドはmvコマンド以外にもあり、用途によっては他のコマンドの方が優れていることもあると説明している。紹介されている方法は次のとおり。

方法 内容や特徴など
コピーしてから元ファイルを削除する mvコマンドでは実際にコピーは行われずに、属性情報だけが書き換えられることもある。コピーと削除(cp、rmまたはtrashコマンド)ではファイルが実際に新しく作成され、データのコピーが行われる
catでファイルを新規作成してから元ファイルを削除する コピーしてから元ファイルを削除する方法と似ている。ファイルをコピーする代わりにcatやtacでファイルからデータと取り出してリダイレクトでファイルに書き込む
rsyncで同期させる ホスト間やファイルシステム間でファイルの同期などを行うrsyncにはさまざまなオプションが用意されている。--remove-source-filesオプションを使うとコピー元のファイルをコピー後に削除することができる。--deleteオプションはコピー先から削除するオプションであり挙動が違うので注意が必要
installでコピーする cpコマンドと似たような機能だが、特にインストール時のファイルコピーに使われるコマンド。オプションを指定してインストール時作業に必要になる動作を指定できる
  • mvコマンドとcatコマンドを使った場合のinodeの違い

    mvコマンドとcatコマンドを使った場合のinodeの違い

Opensource.comの記事はLinuxを前提にしているが、紹介されている挙動や説明は他のUNIX系オペレーティングシステムにおいても適用できる。紹介されているコマンドはデフォルトでインストールされていることが多く、その場合はパッケージからインストールしなくても利用できる。