ターミナルで別のディレクトリにあるディレクトリ内のすべてのファイルへのソフトリンクを作成するにはどうすればよいですか?

ターミナルで別のディレクトリにあるディレクトリ内のすべてのファイルへのソフトリンクを作成するにはどうすればよいですか?

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 インストールのルート内の別のフォルダーへのシンボリックを作成することです。

  1. フォルダに移動する
  2. 正しいフォルダにいることを確認してください
  3. フォルダ内のすべてのアイテムを一覧表示する
  4. シンボリックリンクを作成する

コマンドは次のとおりです:

$ cd wp-content/plugins
$ pwd
$ ls -al
$ ln -s ../../my-folder-with-subfolders/subfolder-name/* .
$ ln -s ../../my-folder-with-subfolders/another-subfolder/* .

関連情報