unlink:単一ファイル専用のシンプル削除ツール

unlink

unlinkコマンドについての概要と詳細

unlinkとは

unlinkコマンドは、ファイルシステム上の単一ファイルを削除するためのUNIX/Linux標準コマンドです。
基本的にはrmと同様の役割を果たしますが、対象が1つのファイルに限定されており、ディレクトリや複数ファイルを扱うことはできません。

内部的には「リンクを切断する」操作であり、ハードリンクを含むファイルエントリを削除します。ただし、通常ユーザーにとっては「ファイル削除コマンド」として使用されます。

主な特徴

  • シンプルなインターフェース:引数は1つのファイル名のみ
  • ハードリンクの解除:参照が1つもなくなるとファイル内容が消える
  • rmとの違い:unlinkは1ファイル専用、rmは複数ファイルやディレクトリも削除可能
  • スクリプトや安全な削除処理に便利

インストール方法

多くのLinuxディストリビューションでは、unlinkは標準でインストールされています。
GNU Coreutilsに含まれているため、以下のコマンドで導入可能です(通常は不要)。

Debian/Ubuntu系
$ sudo apt install coreutils

Fedora系
$ sudo dnf install coreutils

基本的な使い方

ファイルを削除する

$ unlink filename.txt

指定されたfilename.txtというファイルが削除されます。
リンクが1つしかない場合、ファイルの内容も削除されます。

エラー例(複数引数)

$ unlink file1 file2
unlink: extra operand ‘file2’

複数のファイルを指定するとエラーになります。

エラー例(ディレクトリ)

$ unlink mydir
unlink: cannot unlink ‘mydir’: Is a directory

ディレクトリは削除できません(rm -rが必要です)。

unlinkとrmの比較

機能unlinkrm
単一ファイルの削除
複数ファイル削除×
ディレクトリ削除×○(-rオプション)
インタラクティブ操作×○(-iオプション)
初心者向け

unlinkの実用場面

  • スクリプトで1ファイルのみを確実に削除したいとき
  • 安全に特定のファイルだけを対象にする処理に
  • 複数のハードリンクが存在するファイルの一部リンクを切りたいとき

まとめ

unlinkは非常にシンプルながらも、Linuxのファイル管理において基礎的かつ重要な役割を担うコマンドです。
多機能なrmに比べて制限はあるものの、単一ファイルの削除や安全なスクリプト実行環境での利用に適しており、ファイルのリンクと実体の関係を理解するためにも役立ちます。