2016-06-14 4 views
0

あなたはシンボリックリンクを持っていると仮定: を/ tmp/zoo2 - >を/ tmp /動物園をファイルREADLINK機能

そして、あなたは唯一知っているあなたに取得するためのシンボリックリンクの解決方法/ zoo2、を/ tmp /動物園シェルで

/tmpが、あなたはREADLINKを使用するか、またはRubyであなたはFile.readlinkを行います。

エリクサーには何か類似していますか?

答えて

3

あなたは:file.read_linkを使用することができます。

iex(1)> :file.read_link "/tmp/zoo2" 
{:ok, '/tmp/zoo'} 

リンクは相対的であるならば、あなたはベースディレクトリとしてリンクのディレクトリを与え、:filename.absnameを呼び出すことによって、絶対的なターゲットを得ることができます。

iex(1)> link = "/tmp/zoo2" 
"/tmp/zoo2" 
iex(2)> {:ok, relative_target} = :file.read_link link 
{:ok, 'zoo'} 
iex(3)> absolute_target = :filename.absname relative_target, :filename.dirname link 
"/tmp/zoo" 
+0

私はget::file.read_link_all "/ tmp/zoo2" {:ok、 'zoo'} – Mircea

+0

私は答えを更新しました。 – legoscia

+0

素晴らしい。ありがとう! – Mircea

関連する問題