【Linux】lnコマンドの使い方(オプションあり)

lnコマンドの使い方
目次

【lnコマンド】どんな時に使う?

以下のようなことがしたい場合にlnコマンドが役立ちます。

  • ハードリンクを作成したい
  • シンボリックリンクを作成したい

【lnコマンド】基本オプション

書式
ln [オプション] ファイル名 リンク名

                                              ※[ ]は省略可能です

基本的なオプションは以下の表の通りです。

短縮オプションオプション説明
オプションなしハードリンクを作成する
-s–symbolicシンボリックリンクを作成する
-v–verbose詳細を表示する
-f–force同じ名前のファイルが存在する時に強制的に上書きする
-i–interactive同じ名前のファイルが存在する時に確認する
-b–backup=オプション上書きされるファイルのバックアップを作成する
※デフォルトはファイル名の末尾に「~」が付く
<オプション>
numbered, t (番号付きバックアップを作成する)
existing, nil (番号付きバックアップがあれば番号付き、そうでなければ、simple で作成する)
simple, never (常に簡易バックアップを作成)
-S 接尾辞–suffix=接尾辞バックアップファイルが作成される時のファイル名末尾に付ける文字を指定する
※環境変数「SIMPLE_BACKUP_SUFFIX」でも設定可能

【lnコマンド】オプション使用例

実行環境としてRed Hat Enterprise Linux 9.1を使用しています。
※OSのバージョンによって出力結果に若干の違いがある場合があります。

オプションなし
(ハードリンクを作成する)

# ls -l
合計 0
-rw-r--r-- 1 root root 0 11月 25 14:15 linktest.txt

# ln linktest.txt hardlink

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 14:15 hardlink
-rw-r--r-- 2 root root 0 11月 25 14:15 linktest.txt

「-s」「–symbolic」
(シンボリックリンクを作成する)

# ls -l
合計 0
-rw-r--r-- 1 root root 0 11月 25 14:19 linktest.txt

# ln -s linktest.txt symbolic

# ls -l
合計 0
-rw-r--r-- 1 root root  0 11月 25 14:19 linktest.txt
lrwxrwxrwx 1 root root 12 11月 25 14:24 symbolic -> linktest.txt

「-v」「–verbose」
(詳細を表示する)

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 15:35 linktest.txt

# ln -v linktest.txt hardlink
'hardlink' => 'linktest.txt'

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 15:35 hardlink
-rw-r--r-- 2 root root 0 11月 25 15:35 linktest.txt

「-f」「–force」
(対象ファイルが存在する時に強制的に上書きする)

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 2 root root 0 11月 25 14:19 linktest.txt

# ln linktest.txt hardlink
ln: ハードリンク 'hardlink' の作成に失敗しました: ファイルが存在します

# ln -f linktest.txt hardlink

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 2 root root 0 11月 25 14:19 linktest.txt

「-i」「–interactive」
(同じ名前のファイルが存在する時に確認する)

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 2 root root 0 11月 25 14:19 linktest.txt

# ln -i linktest.txt hardlink
ln: 'hardlink' を置き換えますか(yes/no)? yes

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 2 root root 0 11月 25 14:19 linktest.txt

「-b」「–backup=オプション」
(上書きされるファイルのバックアップを作成する)

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 2 root root 0 11月 25 14:19 linktest.txt

# ln -b linktest.txt hardlink

# ls -l
合計 0
-rw-r--r-- 3 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 3 root root 0 11月 25 14:19 hardlink~
-rw-r--r-- 3 root root 0 11月 25 14:19 linktest.txt

「-S 接尾辞」「–suffix=接尾辞」
(バックアップファイルが作成される時のファイル名末尾に付ける文字を指定する)

# ls -l
合計 0
-rw-r--r-- 2 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 2 root root 0 11月 25 14:19 linktest.txt

# ln -S _bk linktest.txt hardlink

# ls -l
合計 0
-rw-r--r-- 3 root root 0 11月 25 14:19 hardlink
-rw-r--r-- 3 root root 0 11月 25 14:19 hardlink_bk
-rw-r--r-- 3 root root 0 11月 25 14:19 linktest.txt
よかったらシェアしてね!
  • URLをコピーしました!
目次