Linuxコマンド · 1 min read · Sep 20, 2025

初心者のためのLinux lnコマンドチュートリアル(5つの例)

時々、コマンドラインで作業していると、ファイル間にリンクを作成する必要があります。これは、lnという専用のコマンドを使用することで実現できます。このチュートリアルでは、いくつかのわかりやすい例を使ってこのツールの基本を説明します。しかし、その前に、ここにあるすべての例はUbuntu 22.04マシンでテストされていることを言及しておく価値があります。

Linux lnコマンド

ご理解いただけたように、lnコマンドはファイル間にリンクを作成することができます。以下は、このツールの構文(または異なる構文)です:

ln [OPTION]... [-T] TARGET LINK_NAME   (1st form)  
ln [OPTION]... TARGET                  (2nd form)  
ln [OPTION]... TARGET... DIRECTORY      (3rd form)  
ln [OPTION]... -t DIRECTORY TARGET...  (4th form)

そして、ツールのマニュアルページは次のように説明しています:

1st formでは、LINK_NAMEという名前でTARGETへのリンクを作成します。2nd formでは、現在のディレクトリにTARGETへのリンクを作成します。3rdおよび4th formでは、DIRECTORY内の各TARGETへのリンクを作成します。デフォルトではハードリンクを作成し、--symbolicを使用するとシンボリックリンクを作成します。デフォルトでは、各宛先(新しいリンクの名前)はすでに存在してはいけません。ハードリンクを作成する場合、各TARGETは存在する必要があります。シンボリックリンクは任意のテキストを保持できます。後で解決されると、相対リンクはその親ディレクトリに関連して解釈されます。

以下のQ&Aスタイルの例は、lnコマンドがどのように機能するかをよりよく理解するのに役立ちます。しかしその前に、ハードリンクとソフトリンクの違いを理解することが重要です。

Q1. lnを使用してハードリンクを作成するには?

これは非常に簡単です。次のようにlnコマンドを使用するだけです:

ln [file] [hard-link-to-file]

例えば:

ln test.txt test_hard_link.txt

これで、test_hard_link.txtという名前のハードリンクが作成されたことがわかります。

Q2. lnを使用してソフト/シンボリックリンクを作成するには?

これには、-sコマンドラインオプションを使用します。

ln -s [file] [soft-link-to-file]

例えば:

ln -s test.txt test_soft_link.txt

test_soft_link.txtファイルはソフト/シンボリックリンクであり、その空色のテキストカラーで確認できます。

Q3. lnが同名の既存の宛先ファイルを削除するようにするには?

デフォルトでは、同名のファイルが宛先ディレクトリに既に存在する場合、lnはリンクを作成させません。

しかし、必要であれば、-fコマンドラインオプションを使用してこの動作を上書きすることができます。

*注意:すべての削除プロセスを対話式にしたい場合は、-iコマンドラインオプションを使用できます。*

Q4. lnが同名の既存のファイルのバックアップを作成するようにするには?

同名の既存のファイルをlnが削除しないようにしたい場合、これらのファイルのバックアップを作成するようにできます。これは、-bコマンドラインオプションを使用することで実現できます。この方法で作成されたバックアップファイルは、名前の末尾にチルダ(~)が付いています。

Q5. 現在のディレクトリ以外のディレクトリにリンクを作成するには?

特定の宛先ディレクトリ(現在のディレクトリ以外)を-tコマンドラインオプションを使用して指定できます。例えば:

ls test* | xargs ln -s -t /home/himanshu/Desktop/

上記のコマンドは、すべてのtest*ファイル(現在のディレクトリに存在する)へのリンクを作成し、それらをデスクトップディレクトリに配置します。

結論

確かに、lnは特に初心者の場合、日常的に必要なものではありません。しかし、いつ役立つかわからないので、知っておくと便利なコマンドです。このツールが提供するいくつかの便利なコマンドラインオプションについて説明しました。これらを終えたら、lnについてもっと学ぶためにそのマニュアルページに進むことができます。もう一つ興味深いコマンドはteeコマンドです。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。