Linux ln コマンド

Linux コマンド大全

Linux ln(英語のフルスペル:link files)コマンドは非常に重要なコマンドであり、あるファイルに対して別の場所に同期リンクを作成する機能があります。

異なるディレクトリで同じファイルを使用する必要がある場合、必要な各ディレクトリに同じファイルを置く必要はありません。特定の固定ディレクトリにそのファイルを置き、他のディレクトリでlnコマンドを使用してリンクすればよく、ディスク容量を重複して占有する必要はありません。

構文

 ln [参数][源文件或目录][目标文件或目录]
パラメータの形式は次のとおりです
[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]
[--help] [--version] [--]

コマンド機能 :
Linuxファイルシステムには、いわゆるリンクがあります。これはファイルの別名と見なすことができます。リンクはさらに2種類に分けられます:ハードリンクとシンボリックリンクです。ハードリンクとは、1つのファイルが複数の名前を持つことができることを意味し、ソフトリンクは、別のファイルの場所を指す内容を持つ特別なファイルを生成する方法です。ハードリンクは同じファイルシステム内に存在しますが、ソフトリンクは異なるファイルシステムをまたぐことができます。

ハードリンクもソフトリンクも元のファイルをコピーすることはなく、ごくわずかなディスク容量しか占有しません。

ソフトリンク:

  • 1. ソフトリンクはパスの形式で存在します。Windowsオペレーティングシステムのショートカットに似ています。
  • 2. ソフトリンクはファイルシステムをまたぐことができますが、ハードリンクはできません。
  • 3. ソフトリンクは存在しないファイル名にリンクすることができます。
  • 4. ソフトリンクはディレクトリにリンクすることができます。

ハードリンク:

  • 1. ハードリンクはファイルのコピーの形式で存在します。ただし、実際のスペースは占有しません。
  • 2. ディレクトリへのハードリンクの作成は許可されていません。
  • 3. ハードリンクは同じファイルシステム内でのみ作成できます。

コマンドパラメータ

必須パラメータ:

  • --backup[=CONTROL] 既存のターゲットファイルをバックアップする
  • -b は --backup と類似--backupただし、パラメータは受け付けません
  • -d スーパーユーザーがディレクトリのハードリンクを作成することを許可する
  • -f 強制実行
  • -i 対話モード。ファイルが存在する場合はユーザーに上書きするかどうかを確認する
  • -n シンボリックリンクを通常のディレクトリと見なす
  • -s ソフトリンク(シンボリックリンク)
  • -v 詳細な処理プロセスを表示する

オプションパラメータ:

  • -S "-S<サフィックスバックアップ文字列>"または"--suffix=<サフィックスバックアップ文字列>"
  • -V "-V<バックアップ方式>"または"--version-control=<バックアップ方式>"
  • --help ヘルプ情報を表示する
  • --version バージョン情報を表示する

実例

ファイルにソフトリンクを作成します。log2013.logファイルにソフトリンクlink2013を作成します。log2013.logが失われると、link2013は無効になります:

ln -s log2013.log link2013

出力:

[root@localhost test]# ll
-rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log
[root@localhost test]# ln -s log2013.log link2013
[root@localhost test]# ll
lrwxrwxrwx 1 root root     11 12-07 16:01 link2013 -> log2013.log
-rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log

ファイルにハードリンクを作成します。log2013.logにハードリンクln2013を作成します。log2013.logとln2013の各属性は同じです。

ln log2013.log ln2013

出力:

[root@localhost test]# ll
lrwxrwxrwx 1 root root     11 12-07 16:01 link2013 -> log2013.log
-rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log
[root@localhost test]# ln log2013.log ln2013
[root@localhost test]# ll
lrwxrwxrwx 1 root root     11 12-07 16:01 link2013 -> log2013.log
-rw-r--r-- 2 root bin      61 11-13 06:03 ln2013
-rw-r--r-- 2 root bin      61 11-13 06:03 log2013.log

Linux コマンド大全

その他の拡張