質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
UNIX

UNIXとは、AT&Tのベル研究所で開発されたコンピューター用のマルチユーザー・マルチタスクのオペレーションシステム(OS)です。政府や教育機関や研究所で広範囲に採用されています。

Q&A

解決済

1回答

10085閲覧

ディレクトリのシンボリックリンクの上書き方法はありますか?

mochizukikotaro

総合スコア15

UNIX

UNIXとは、AT&Tのベル研究所で開発されたコンピューター用のマルチユーザー・マルチタスクのオペレーションシステム(OS)です。政府や教育機関や研究所で広範囲に採用されています。

1グッド

1クリップ

投稿2014/09/06 13:02

home/Hoge/hoge.txt
home/Piyo/piyo.txt

があったとして、homeにて、

ln -s Hoge Fuga

などとやれば、home/Fuga@/hoge.txt というHogeのシンボリックリンクができると思うのですが、

ln -s Hoge Piyo

とした場合は、すでにPiyoが存在しているため、

home/Piyo/piyo.txt, Hoge@

などとなってしまいます。(Piyoの下にHogeが作られます。。)

■やりたいことは、

Piyoを削除というか上書きをして

home/Piyo@/hoge.txt

としたいのですが、そんな方法はあるのでしょうか?

ln -sf Hoge Piyo とか ln -sfn Hoge Piyo とかでいけるんじゃないかと思って試してみたのですが、いけず。教えて頂けると幸いです!

ikuwow👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

シンボリックリンクの張替えの張り替えや、既存のファイルをシンボリックリンクに張り替えることはできます。
でも ln コマンドで、既に実態として存在するディレクトリを シンボリックリンクにはできないようです。
home/Piyo を シンボリックリンク にするには、 事前に rm で home/Piyo を削除するしかないと思います。
(ソースコードを参照すれば、実際にそうなのか、その理由は何なのか がわかるかもしれません。
man ln での情報と、いくつかコマンド実行をためしたかぎりでは、そこまでしかわかりませんでした。)

参考:

  Mac では "man ln" すると "-F" という option もあることが表示されるのですが、それでも お望みの動作とは関係がなさそうでした。

...
ずっと悩んでたのが、既にあるシンボリックリンクを削除せずにリンク先を変更する方法。
...
これでできた。
ln -snf リンク元 リンク名
...

投稿2014/09/07 01:39

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mochizukikotaro

2014/09/07 01:45

ありがとうございます!!すごくハマっていたことだったので、とても助かりました!m(..)m 僕も、-Fオブションや-nオプションなどいろいろ挙動を試してみたのですが、上手くいかず。。正直いまだに、-Fオプションのことは、よくわかってないのですが。。 でも、 >でも ln コマンドで、既に実態として存在するディレクトリを シンボリックリンクにはできないようです。 これが知れてスッキリしました!ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問