実行すると、次の内容ls -al
が表示さ/usr/sfw/bin
れます。make -> gmake
これはどういう意味ですか?これはシンボリックリンクですか?私はグーグルをし、この質問に対する答えを見つけることができませんでした。
答え1
はい、シンボリックリンクです。 lsで-Lオプションを使用すると、シンボリックリンク自体のプロパティではなく、指す実際の基本アイテムのプロパティを見ることができます(シンボリックリンクの所有者/グループ/モードはあまり興味深いものではありません。一般的に興味のあるもの)。 )を指摘しています。
答え2
はい、これはシンボリックリンクです。以下のように試してみることができます。
bash-3.2$ mkdir a
bash-3.2$ ln -s a b
bash-3.2$ ls -al b
lrwxrwxrwx 1 ramesh ramesh 1 May 28 19:10 b -> a
b
を指すシンボリックリンクですa
。
シンボリックリンクとハードリンクの違い
ファイルシステムのファイルは、デフォルトでinodeへのリンクです。その後、ハードリンクは、同じプライマリインデックスノードへのリンクを含む別のファイルを生成します。
ファイルを削除すると、プライマリインデックスノードへのリンクが削除されます。 iノードへのすべてのリンクが削除された場合にのみ、iノードは削除(または削除/書き換え可能)になります。
シンボリックリンクは、ファイルシステムの他の名前へのリンクです。
ハードリンクが確立されると、リンクはinodeを指します。元のファイルを削除、名前変更、または移動しても、ハードリンクはデフォルトのinodeにリンクされているため影響を受けません。 inodeのデータに対するすべての変更は、inodeを参照するすべてのファイルに反映されます。
注:ハードリンクは同じファイルシステム内でのみ機能します。シンボリックリンクは他のファイルの名前にすぎないため、ファイルシステムにまたがる可能性があります。
引用する
答え3
これは他の人が説明したリンク記号です。ファイルシステムでファイルが何であるかわからないときはいつでも、このfile
コマンドを使用してそのタイプを確認できることを追加します。
はい
$ ll
total 20
drwxrwxr-x+ 3 saml saml 4096 May 28 19:47 dir1
drwxrwxr-x+ 2 saml saml 4096 May 28 19:52 dir2
-rw-rwxr--+ 1 saml saml 0 May 28 19:41 file1
lrwxrwxrwx. 1 saml saml 5 May 28 20:55 link -> file1
協会
$ file link
link: symbolic link to `file1'
文書
$ file file1
file1: empty
目次
$ file dir1
dir1: directory
出力にはls -l
最初の列の型も反映されます。
d
=ディレクトリl
=リンク-
=ファイル
メモ:他の種類もここに表示できます。たとえば、fifoや文字デバイスなどがあります。