Help us understand the problem. What is going on with this article?

【ln -s】世界一シンプルなシンボリックリンクまとめ [Linux]

More than 1 year has passed since last update.

はじめに

すごくシンプルで簡単にシンボリックリンクについてまとめました。
とりあえず、これだけ押さえておけば、ここで紹介する用途以外にシンボリックリンクを利用する際にも、問題なく理解が進むでしょう。

対象読者
シンボリックリンクという言葉を聞いたことはあるが、いまいちどういう場面で利用するのかイメージが湧かない方。

シンボリックリンクとは

ファイルの実体に直接名前をつけるのがハードリンク、
実体ではなく、ファイル名に対して間接的に名前をつけるのがシンボリックリンクです。

イメージとしては、
全てのファイルには名前がついており、本名別名の2種類あった時に。
ファイルの本名がハードリンク、別名がシンボリックリンクといった感じです。

そのうち、ファイルやディレクトリを管理する際には、シンボリックリンクが活躍することが多く、それはファイルやディレクトリの代理人としての役回りをします。Windowsにおける「ショートカット」のUNIX系OSにおける呼び名のようなものです。

具体的な状況で理解しよう

データファイルはDocumentディレクトリの下に用途別に分けて管理し、よく使うファイルだけはDesktopショートカットを置いておく、という使い方はGUI環境ではお馴染みですよね。ショートカットは近道をいう名前の通り、目的のファイルへのパスが入っており、CUIの環境ではそれを、シンボリックリンクで実現しようということです。

作成

❯ ln -s Document/projects/projectX/data02.txt ./latest

もしくは

❯ ln -s Document/projects/projectX/data02.txt latest

あるいは、同じ名前で作成したい場合、第二引数は省略して良い。
(ここでは、latestという名前ではなく、data02.txtという名前のリンクが作成される)

❯ ln -s Document/projects/projectX/data02.txt

削除

❯ unlink latest

ディレクトリにシンボリックリンクを作成(主な用途)

主な用途に、ディレクトリにシンボリックリンクを作成することがあります。
プロジェクトの進行中など、ディレクトリの奥深くに目的ディレクトリがある場面は多いと思います。長期にわたってのプロジェクトなどは、毎回作業前にディレクトリへ移動するのは、地味に手間がかかるものです。その際、ディレクトリにシンボリックリンクを作成すると、移動の手間が省け、いくぶん楽になるのでおすすめです。

// 奥深いプロジェクト
❯ ls Document/projects/projectX
data01.txt data02.txt

// シンボリックリンク作成
❯ ln -s Document/projects/projectX

// 簡単アクセス
❯ ls projectX
data01.txt data02.txt

注: 上記の場合、同じ名前で作成したいので、第二引数は省略しています。

補足(オプション)

オプション 意味
-s (--symbolic) シンボリックリンクを作成する
-f (--force) すでに登録名が登録されたものであった場合、強制的に上書きする
-i (--interactive) すでに登録名が登録されたものであった場合、上書き前に確認する
-v (--verbose) リンクを登録する際、登録する登録名とリンク先を表示する
-b (--backup) すでに登録名が登録されたものであった場合、元々のリンクをバックアップし新規にリンクを登録する

参考

takuyanin
Just keep going. My favorites: Programming/ English/ American TV series/ Travel/ Dance/ Music
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした