タグ付けされた質問 「symlink」

存在しない、または既存のファイルまたはディレクトリを参照する特別なタイプのファイル。シンボリックリンクの内容は、シンボリックリンクが指すファイルへのパスである任意の文字列で構成されます。パス名の解決中にシンボリックリンクが検出されると、ファイルに保存されている文字列を使用してパス名の解決が変更されます。

2
実行可能なシンボリックリンクは「コマンドが見つかりません」という結果になります
次のようなシンボリックリンク(昨日)を作成しました。 sudo ln -s bin/python /usr/bin/prj-python 実行すると: prj-python file.py 私は得る: prj-python: command not found リンクを再度作成しようとすると、次のメッセージが表示されます。 ln:シンボリックリンクの作成 `/ usr / bin / prj-python ':ファイルが存在します なぜそれが起こっているのですか?私$PATHは: / usr / local / sbin:/ usr / local / bin:/ usr / sbin:/ usr / bin:/ sbin:/ bin:/ usr / games:/ opt / real / …
24 symlink  ln 

2
/ proc / <pid> / exeシンボリックリンクは通常のシンボリックリンクとどう違うのですか?
プロセスを開始してからそのバイナリを削除しても、次の場所から回復できます/proc/&lt;pid&gt;/exe。 $ cp `which sleep` . $ ./sleep 10m &amp; [1] 13728 $ rm sleep $ readlink /proc/13728/exe /tmp/sleep (deleted) $ cp /proc/13728/exe ./sleep-copy $ diff sleep-copy `which sleep` &amp;&amp; echo not different not different $ stat /proc/13728/exe File: ‘/proc/13728/exe’ -&gt; ‘/tmp/sleep (deleted)’ Size: 0 Blocks: 0 IO Block: 1024 …
23 linux  symlink  proc 

1
シンボリックリンクターゲットごとにファイルを一覧表示する
シンボリックリンク名ではなく、シンボリックリンクのターゲット名をフィルター処理することにより、ファイルのリストを取得する(およびそのリストで何かを行う)方法 たとえば、次のリストの最初の4つのファイル(ターゲットにはが含まれていますbar)のみに関心があります。 foo -&gt; /tmp/bar bar -&gt; /home/me/bartoo baz -&gt; /home/me/public/barthree zoo -&gt; /usr/share/bar moo -&gt; /tmp/foo roc -&gt; /tmp/roc
23 find  symlink 

2
とにかくそのファイルシステム上のディレクトリへのシンボリックリンクを開いたときにファイルシステムを自動的にマウントする方法はありますか?
XfceでArchを使用しています。 最近、ファイルシステム上のディレクトリへのシンボリックリンクを作成しました。 しかし、シンボリックリンクを開く前に、ブート中にファイルシステムをマウントしたり、手動でマウントしたりしたくありません。 とにかくそのファイルシステム上のディレクトリへのシンボリックリンクを開いたときに、そのファイルシステムを自動マウントする方法はありますか?

7
フォルダ構造をコピーして、ファイルへのシンボリックリンクを作成する方法
複数のサブレベルフォルダーを含むフォルダーSOURCEがあり、それぞれに独自のファイルがあります。 ディレクトリ構造をコピーする必要がある新しいフォルダーCOPYにこのフォルダーをコピーしますが、ファイルはSOURCEおよびそのサブフォルダーの元のファイルへのシンボリックリンクとして保持します。

6
2つのパス間の相対リンクを取得する
次の2つのパスがある&lt;source_path&gt;とし&lt;target_path&gt;ます。&lt;target_path&gt;from &lt;source_path&gt;を相対パスとして表現する方法があるかどうか、シェル(zsh)が自動的に検出するようにします。 例えば、仮定しましょう &lt;source_path&gt; は /foo/bar/something &lt;target_path&gt; は /foo/hello/world 結果は ../../hello/world これが必要な理由: 私はからのシンボリックリンクを作成したいとする必要&lt;source_path&gt;に&lt;target_path&gt;使用して相対的な「私はsysの管理者ではないよ(私は、Windowsからネットワーク上のこれらのファイルにアクセスするとそうでない場合は、当社のSambaサーバがファイルを適切に表示されていないので、シンボリックリンク可能な限りの、そしてドンこの設定を制御できます) &lt;target_path&gt;および&lt;source_path&gt;が絶対パスであると仮定すると、以下は絶対パスを指すシンボリックリンクを作成します。 ln -s &lt;target_path&gt; &lt;source_path&gt; だから私のニーズには機能しません。数百のファイルに対してこれを行う必要があるため、手動で修正することはできません。 これを処理するシェルビルトインはありますか?
21 shell  files  zsh  symlink 

2
シンボリックリンクは実際にディスク使用量に違いをもたらしますか?
Linuxでは、シンボリックリンク(ソフトリンク、シンボリックリンク)は、Windowsショートカットなど、どこにでもある別のファイルを参照するポインターのようなものです。ただし、シンボリックリンクがあるフォルダーのディスク使用量を確認すると、ファイルマネージャーの表示とduレポートの表示が一致しません。ただし、du -L(-L, --dereference; dereference all symbolic linksmanページから)入力するdu -Lと、ファイルマネージャーが報告する出力とサイズは同じです。 私の質問は、たとえば、別のhomeパーティションにある大きなファイルへのソフトリンクがある場合、問題はありますか? 例: マイ/var/tmpフォルダが平野空です。ファイルを作成しましょう: $ cat /some/file.txt &gt; file.txt $ du -ac 164 ./file.txt 168 . 168 total そして、ファイルマネージャー(この場合はThunar)が報告します サイズ:1アイテム、合計163.0 kB 大丈夫。次に、非常に大きなファイル/tmpとシンボリックリンクを作成します。 $ cat /dir/really_big.txt &gt; /tmp/heavy.txt $ du -a | grep heavy.txt 408 ./heavy.txt $ ln -s /tmp/heavy.txt heavy.txt $ du -ac …

4
sed -iがシンボリックリンクを破壊しないようにするにはどうすればよいですか?
sed -iシンボリックリンクで実行すると、なぜそのリンクが破壊され、リンク先ファイルに置き換えられるのですか?これを避ける方法は? 例えば。 $ ls -l pet* -rw-rw-r-- 1 madneon madneon 4 mar 23 16:46 pet lrwxrwxrwx 1 madneon madneon 6 mar 23 16:48 pet_link -&gt; pet $ sed -i 's/cat/dog/' pet_link $ ls -l pet* -rw-rw-r-- 1 madneon madneon 4 mar 23 16:48 pet -rw-rw-r-- 1 madneon madneon 4 …
21 sed  symlink 

3
/ usr / bin / javaからのJavaの場所
Linuxシステム内でjavaの場所を見つけようとしています。 [980@b449 ~]$ which java /usr/bin/java [980@b449 ~]$ readlink -f $(which java) /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java 2つのコマンドの違いは何ですか?
20 symlink  java 

5
シンボリックリンクの元のファイルを見つける
したがって、ホームディレクトリ内のファイルから別のパーティション上の別のファイルへのシンボリックリンクがあるとします。リンクされたファイルのターゲットの場所を見つけるにはどうすればよいですか?これにより、私が持っているとfile2しましょう/home/user/。しかし、それは別のものへのシンボリックリンクfile1です。file1ファイルを見つけるために各パーティション/ディレクトリを手動で移動することなく、どのように見つけることができますか?
20 symlink 

3
シンボリックリンクを介してcdした場合、pwdが実際のパスではなくシンボリックリンクを表示するのはなぜですか?
ln -s 1 2ディレクトリ内にあるtestディレクトリへのソフトリンク()を作成し、ソフトリンク()を開き、cd 2を使用して現在のパスを表示しましたpwd。表示されたパスは~/test/2でした~/test/1。 WindowsのようなOSでは異なり、ショートカットにより実際のディレクトリに移動します。Linuxでこのソフトリンクがどのように機能するか、少し混乱しています。のようなショートカットではありませんWindowsか?なぜパスはそうではないの~/test/1ですか? $ mkdir test $ cd test $ mkdir 1 $ ln -s 1 2 $ cd 2 $ pwd /home/dazz/test/2


6
シンボリックリンクのエイリアスと同等ですか?
ホームフォルダー内のいくつかのディレクトリを頻繁にジャンプして、それらの作成にうんざりする必要があることに気づきました。従来はシンボリックリンクであった、より迅速なアプローチが必要です。 ただし、ホームディレクトリを多数のシンボリックリンクで煩雑にしたくありません。~/links/ディレクトリを作成し、シンボリックリンクで混乱させることもできますが、それでもいです。また、毎日変更するシンボリックリンク(.bashrcで定義)を作成して、現在のディレクトリにジャンプすることもできます。 シンボリックリンクを効果的にエイリアスし、クイックナビゲーションのリンクとして認識されるもののls、ホームディレクトリを実行しても実際には表示されず、現在のセッションを超えて持続しないものを作成する方法はありますか?

4
busyboxのディレクトリへのシンボリックリンクをアトミックに変更するにはどうすればよいですか?
シンボリックリンクを(可能な限り近くで)アトミックに変更しようとしています。私はもう試した: ln -sf other_dir existing_symlink existing_symlinkが指すディレクトリに新しいシンボリックリンクを置くだけです。 ln -sf other_dir new_symlink mv -f new_symlink existing_symlink それは同じことをしました:シンボリックリンクをディレクトリに移動しました。 cp -s other_dir existing_symlink ディレクトリであるため拒否します。 私はそれmv -Tがこのために作られたと読んだことがありますが、busyboxには-Tフラグがありません。

1
ls -l vs ls -lL
これは重複しているように見えますが、以前に尋ねられた質問は私の質問に答えません そのため、シェルで/homeディレクトリに移動し、そこを呼び出すディレクトリを作成しますplay 次に、このディレクトリに移動して/home/play、2つのファイルを作成します。1つ目はテキストファイル、2つ目は端末へのシンボリックリンクですtty 今使用するls -lと、次の出力が得られます どこに置くかのようにls -lL私はこれを得る この違いはどういう意味ですか?疑問符は何を表していますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.