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

ln-既存のファイルへのハードリンクおよび既存のファイルと存在しないファイルへのソフトリンクを作成するコマンドラインツール。

3
不足しているディレクトリを作成するには、 `ln`を使用します
だから私は小さなパッケージマネージャーを書いていて、私が遭遇した問題はファイルへのシンボリックリンクを作ることです。 パッケージをにインストールし/usr/pkg/name-version、ファイルを読み取って、作成するシンボリックリンクを決定します。lnリンクの作成に使用していますが、Linux APIヘッダーをインストールしようとすると問題が発生します。ヘッダーファイルをリンクする必要があります。ヘッダーファイルを含むフォルダーではなく、リンクする必要があります(したがって、2つのパッケージがインクルードの同じサブディレクトリにファイルを配置する必要がある場合、1つのパッケージをねじ込むことなくそれらを行うことができます)。 その問題は解決しましたがln、パスが不完全な場合は単にエラーが表示されます。これは、パッケージがインストールされるまでこれらのディレクトリが存在してはならないため、厄介です。 ln不足しているディレクトリを作成するフラグがありますか、それとも複雑なbashスクリプトを使用する必要がありますか?

1
シンボリックリンクの作成を強制するには?
日付で整理された(名前付きの)他のディレクトリでいっぱいの特定のディレクトリがあります。参照しやすいcurrentように、最新のものを指すというシンボリックリンクがあります。 新しい日付ディレクトリを作成するスクリプトで、currentシンボリックリンクを作成または修正して、作成された最新のディレクトリを指すようにします。 適切なコマンドは、たとえば、 ln -fs 2017-03-01 current 場合はcurrentシンボリックリンクがまだ存在していない、この作品。 ただし、currentシンボリックリンクがすでに作成されている場合(および、たとえば、ディレクトリを指している場合2017-02-28)、これは機能しません。 代わりにシンボリックリンクを除去するcurrentと、新しいシンボリックリンク作成currentた点にし2017-03-01、その結果、代わりに壊れたシンボリックリンクであろうと呼ば 2017-03-01を指し、それ自体休止内部ディレクトリ2017-02-28(シンボリックリンクがここでcurrent指摘し、まだ点)。 これは私を困惑させたので、の仕様を読みましたln。これは予想される動作です。 あらすじ ln [-fs] [-L|-P] source_file target_file ln [-fs] [-L|-P] source_file... target_dir 説明 ... 2番目の構文形式は、最後のオペランドが既存のディレクトリを指定するときに想定されます。 する全く方法がないこと、そして、思わシンボリックリンクを再指定現在のディレクトリを指していることを新たなターゲットに新しいターゲットは名前の持つ別のシンボリックリンクの名前からは。だからln -fs私が思ったようには動かない。 必要があります I rm current、またはそこには、私が見落としてきた別のアプローチですか?
10 symlink  rm  ln 

2
同じファイルシステムの「mount --bind」ディレクトリからファイルへの「ハードリンク」を作成できないのはなぜですか?
元の問題 1つのファイルシステムにファイルがあります。 /data/src/file そして私はそれをハードリンクしたいと思います: /home/user/proj/src/file しかし/home、1つのディスク上にあり/data、別のディスク上にあるため、エラーが発生します。 $ cd /home/user/proj/src $ ln /data/src/file . ln: failed to create hard link './file' => '/data/src/file': Invalid cross-device link さて、デバイス間でハードリンクできないことを学びました。理にかなっています。 手元の問題 だから私は空想を得て、のファイルシステムsrc上にあるフォルダーをバインドマウントすると思いました/data: $ mkdir -p /data/other/src $ cd /home/user/proj $ sudo mount --bind /data/other/src src/ $ cd src $ # (now we're technically on …
9 mount  ln  bind-mount 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.