ln

/

lnコマンドの使い方

タグ ln ハードリンク シンボリックリンク


概要

  • シンボリックリンクやハードリンクを作るコマンド

シンボリックリンクとハードリンクの違い

  • シンボリックリンク
    • windowsのショートカット、macのエイリアスに該当する存在
    • ショートカットとなる本体のパスを記したデータが実体
    • ファイルシステムを超えてリンクを作成できる
  • ハードリンク
    • i nodeを直接対象のファイル(ディレクトリ)に指す
    • ディレクトリのハードリンクを作成することはできない

シンボリックリンクの作り方

$ ln -s <source-path|actual-path> <targegt-path|alias-path>
  • actual-path
    • 実態のファイル・ディレクトリ
  • alias-path
    • エイリアスとする名前
  • ln -aliでみると実体がどこにあるのか確認できる(i nodeは異なる)
  • シンボリックリンクは絶対パスでリンクを作成しないとアクセスできなくなることがある

pythonでのシンボリックリンクの作り方

from pathlib import Path
Path("<alias-path>").symlink_to("<absolute-actual-path>")

ハードリンクの作り方

$ ln <source-path> <targegt-path>
  • ln -aliで作成したリンクをみると同じi nodeになっているとわかる

参考