Linuxシステムのリンクは、ファイルまたはディレクトリへのポインタです。 Linuxには、ソフトリンクとハードリンクの2種類のリンクがあります。
この記事では、ソフトリンクについて詳しく説明します。 Windowsのショートカットと同様に、ソフトリンク(シンボリックリンクとも呼ばれます) 、ファイルの内容を保存せずにファイルをポイントします。ファイルまたはソフトリンクのいずれかに加えられた変更は、ファイルの両方のバージョンに反映されます。
Linuxでのソフトリンクの表現
ソフトリンクの概念を理解したら、ファイルシステムでソフトリンクを見つける方法を知る必要があります。
配色
'ls'
コマンドは、Linuxファイルシステム内のすべての異なるコンポーネントの配色を提供します。ソフトリンクは'cyan'
で示されます 色。

上記の出力では、'desktop'
および'program'
ソフトリンクです。一部のシステムでは、デフォルトの配色が変更されているため、ソフトリンクを理解できない場合があります。
ls -lを使用する コマンドを実行すると、ディレクトリに存在するリンクを明確に見つけることができます。

ディレクトリ内のリンクを指定するだけでなく、ソフトリンクの元のファイルの場所またはディレクトリも表示します。
GUI表現
Windowsのショートカットと同様に、Linuxはソフトリンクのアイコンにヒントを提供します。ソフトリンクのGUIアイコンには、右下隅に矢印記号があります。

この図から、'desktop'
という名前のソフトリンクがはっきりとわかります。 はディレクトリへのポインタですが、'program'
「.cpp」ファイルを指します。
Linuxでソフトリンクを作成するにはどうすればよいですか?
ソフトリンクを見つける方法を見てきましたので、Linuxでソフトリンクを作成する方法を学びます。これは'ln'
の助けを借りて行われます コマンド。
ln -s <PATH>/<ORIGINAL_FILE> <LINK_NAME>

'ln'
コマンドは、Linuxでリンクを作成するために特に使用されます。 '-s'
上記のコマンドで使用されるオプションは、ソフトリンクの作成を表します。
'ls -l'
を使用する コマンドを使用すると、ソフトリンクの作成が成功したかどうかを確認できます。
元のファイルの編集
ソフトリンクは元のファイルの単なるシンボルであるため、元のファイルに加えられた変更はすべてソフトリンクにも反映されます。変更点を示しましょう:
- 元のファイル –ドキュメントフォルダの「my_program.cpp」
- ソフトリンク –デスクトップ上の「プログラム」
sedコマンドを使用して元のファイルを編集します。
sed -i "s/main/disdain/g" my_program.cpp

上記のコマンドは、「main」という単語の出現箇所をすべて検索し、それぞれを「disdain」という単語に置き換えます。
'program'
デスクトップに存在するファイルはソフトリンクであるため、元のファイルに加えられた変更を反映する必要があります。

ソフトリンクを介したコンテンツの編集
ソフトリンクの内容を編集すると、元のファイルの変更も反映されます。これは、次のスクリーンショットで示すことができます:

前述のように、'program'
ソフトリンクです。 'echo'
を使用する コマンドの場合、「編集済み」という単語を追加します ソフトリンクへ。元のファイル'my_program.cpp'
で発生した変更を明確に確認できます。 同様に。
注: ソフトリンクの編集中は、
'sed -i'
を使用しませんでした コマンドと同様に、プロセスと同様に、ソフトリンクが削除され、同じ名前で新しいファイルが作成されます。元のファイルを削除して元に戻すと、リンクが保持されることが後でわかります。
Linuxで壊れたソフトリンクを特定する
元のファイルを削除すると、ソフトリンクが壊れます。 「ls」コマンドを使用すると、壊れたリンクは赤い色で背景が黒く表示されます。

上の図では、元のファイルを現在のディレクトリに移動しています。元のファイルを元の場所から削除すると、ソフトリンクで色の変化を確認できます。
壊れたリンクを修正する
すべてのソフトリンクは元のファイルを指します。元のファイルを同じ名前の別のファイルに置き換えることで、壊れたリンクを簡単に修正できます。以下で同じことを示しました。

Linuxでのソフトリンクの削除
ソフトリンクを削除する最も簡単な方法は、'rm'
を使用することです。 コマンドの後にリンク名を続けます。
rm <LINK_NAME>

Linuxでリンクを削除するもう1つの方法があります。 'unlink'
によって行われます コマンド。
unlink <LINK_NAME>

ソフトリンクのソフトリンク
'ln'
を使用する コマンドを実行して、以前に作成したソフトリンクへのソフトリンクを作成しましょう。
ln -s <LINK_NAME> <NEW_LINK_NAME>

これらのリンクがチェーンを形成していることは明らかです。いずれかのリンクの変更は、すべてのファイルに反映されます。
連続リンクはチェーンを形成するため、中間リンクを削除すると、子リンクが切断されます。たとえば、最初のソフトリンク'program'
を削除すると 、子リンクが壊れます。

途中でリンクを切断すると、チェーン全体が切断されます。
結論
ソフトリンクは、Linuxファイルシステム内のライブラリとファイルをリンクする一般的なLinux機能です。この記事では、Linuxでのソフトリンクの作成、プロパティ、および削除について説明します。
記事がわかりやすいものであったことを願っています。質問や提案については、以下にコメントしてください。