goo blog サービス終了のお知らせ 

日々適当

hibitekitou

エイリアスとシンボリックリンク

mac |2019-12-18

ここに三つのファイルを用意しました。
一つはオリジナルのテキストファイル。他の二つはそのエイリアスとシンボリックリンク です。

上図が最初の状態。この状態からエイリアス、シンボリックリンクのファイルを動かしても、当然ながらオリジナルのファイルを参照して中身を見ることができます(下図)。

しかしオリジナルのファイルの場所を移動したときに、両者の挙動は異なります。
下図はオリジナルのファイルをORIGINALフォルダに移動させた状態です。こうなった時、エイリアスの方は問題なくオリジナルのファイルを参照するのに対し、シンボリックリンクの方はオリジナルのファイルを見失いもはやオリジナルのファイルを参照することはできません。

ということで普通に使う分にはエイリアス は非常に良くできた機能だと思っています。

一方でディレクトリをシンボリックリンクやエイリアスとして扱う場合です。
下図はORIGINALフォルダをエイリアス やシンボリックリンク として配した状態です。ALIASフォルダの下にはエイリアスとして、SYMBOLICフォルダの下にはシンボリックリンク としています。

Finder上ではどちらも同じような動作をします。

けれどもターミナルにおいては、エイリアスの方はディレクトリではないと認識されてしまいます。
下図はエイリアスの方は Not a directory と言われて cd 出来なかったのに対し、シンボリックリンクの方はちゃんと cd で中に移動できたことを示しています。

以上のことから、ターミナルからディレクトリを扱う場合にはシンボリックリンク が有利という印象になるわけですね。まぁそれは良いんです。便利だし。
問題はファイルを参照するアプリケーションがあった時、その参照先がシンボリックリンクのディレクトリの中にある場合です。例えばPhotsohopで外部ファイルをリンクして配置した時、その外部ファイルのパスはシンボリックリンクを利用したパスを辿るのではなく、オリジナルのパスになっちゃうのですね。
オリジナル:/Users/userName/Desktop/Original/ref.psd
シンボリックリンク:/Sym/Original/ref.psd
ってなってたとして、シンボリックリンクから辿ってref.psdファイルを配置しても、保持される情報はオリジナルのファイルパスという、ね。で、困ってます。

コメント ( 0 )|Trackback ( )
 
コメント(10/1 コメント投稿終了予定)
 
コメントはありません。
コメントを投稿する
ブログ作成者から承認されるまでコメントは反映されません
 
名前
タイトル
URL
コメント
コメント利用規約に同意の上コメント投稿を行ってください。

数字4桁を入力し、投稿ボタンを押してください。