ln -fs ./source/*
宛先ディレクトリで実行しても機能しない
それが示している:
./source/file1 is not a directory
答え1
からman ln
:
概要
ln [OPTION]... [-T] TARGET LINK_NAME (1st form) ln [OPTION]... TARGET (2nd form) ln [OPTION]... TARGET... DIRECTORY (3rd form) ln [OPTION]... -t DIRECTORY TARGET... (4th form)
説明
1 番目の形式では、LINK_NAME という名前の TARGET へのリンクを作成します。2 番目の形式では、現在のディレクトリに TARGET へのリンクを作成します。3 番目と 4 番目の形式では、DIRECTORY 内の各 TARGET へのリンクを作成します。デフォルトではハード リンクが作成され、--symbolic を使用するとシンボリック リンクが作成されます。
よく読んでみると、(ソース フォルダーに複数のファイルが含まれていると仮定して) 3 番目の形式を使用していることがわかります。ディレクトリを指定していないため、最後のファイル名はディレクトリとして解釈されます。
シンボリックリンクを作成するディレクトリ内にいる場合は、.
コマンドの最後に (現在のディレクトリ) を追加するだけです。
ln -fs ./source/* .
答え2
私は何かをしたかった/する必要がありましたが、@danzel が最良の答えをくれました。必要なのは、WordPress のプラグイン フォルダー内に、WordPress インストールのルート内の別のフォルダーへのシンボリックを作成することです。
- フォルダに移動する
- 正しいフォルダにいることを確認してください
- フォルダ内のすべてのアイテムを一覧表示する
- シンボリックリンクを作成する
コマンドは次のとおりです:
$ cd wp-content/plugins
$ pwd
$ ls -al
$ ln -s ../../my-folder-with-subfolders/subfolder-name/* .
$ ln -s ../../my-folder-with-subfolders/another-subfolder/* .