実行したがまだ存在しない場合、ln -s source.txt symlink.txt
自動的symlink.txt
に生成されたリンクファイルは何ですかsymlink.txt
、それともコマンドはnoopですか?
noopの場合、単に空白symlink.txt
(touch symlink.txt
)を生成してから前の命令を実行すると、計画どおりに作業が進みますか?
ご協力ありがとうございます
答え1
はい、ln
リンクファイルが作成されます。ファイルが存在する場合は失敗します(-f
または--force
オプションを使用しない限り)。
ところで。コマンドを実行するか、マニュアルページを読むと、より速い答えが得られます;-)
答え2
まあ、これはテストするのは簡単です:
$ mkdir test; cd test
test$ ln -s source.txt symlink.txt
test$ ls -l
total 0
lrwxrwxrwx 1 ilkkachu ilkkachu 10 Oct 23 18:24 symlink.txt -> source.txt
test$ cat symlink.txt
cat: symlink.txt: No such file or directory
(出力をテキストで表現することは、GNU lsとカラーサポートと一致しません。)
これらのコマンドは、存在するかどうかに関係なくln -s
シンボリックリンクを生成します。ただし、シンボリックリンクを介してファイルにアクセスしようとすると、指すファイルが存在しないため機能しません。出力の色指定を使用すると、リンク名と宛先が赤で表示されます(またはライブリンク以外の設定は何でも)。symlink.txt
source.txt
ls
symlink.txt
存在する場合、ln -s source.txt symlink.txt
予想されるエラーが発生します。ln -sf
ターゲットファイルを上書きするために使用されます。