約 .
UNIX / Linuxでは.
、現在のディレクトリを意味します。ls
コマンドにリストされていることもわかります。
ls -al
total 40348
drwx------ 20 root root 4096 Feb 2 23:05 . <-- there!
drwxr-xr-x 24 root root 4096 Jan 31 20:07 ..
-rw-r--r-- 1 root root 322 Dec 16 17:35 20-revert
スラッシュ./
とシンボリックリンク
にを追加/
する場合、これは/
他のディレクトリ名にを追加するのと同じ意味です。ファイルを操作していないことを確認するだけです。通常、これはcp
とmv
コマンドの違いにはなりませんが、シンボリックリンクを使用している場合は違いがわかります。この構造を想定します。
.
├── a
├── dir1
│ ├── b
│ └── c
├── dir2
│ └── d
└── symlink -> dir2
次に、通常のリストにリンク自体が表示されます
ls -l symlink
lrwxrwxrwx 1 gert gert 4 Feb 3 12:15 symlink -> dir2
しかし、を追加する/
と、リストがその中に降りて、内容が表示されます。
ls -l symlink/
total 0
-rw-rw-r-- 1 gert gert 0 Feb 3 12:15 d
つまり、操作を使用するときは、リンク自体を置き換えるのではなく/
、その内容を参照するか、リンクを逆参照してコピー/移動したい場合にを追加することをお勧めします。
参照:ディレクトリへのシンボリックリンクの末尾のスラッシュ
例に戻る
あなたの質問の例では、ディレクトリのコンテンツを他のディレクトリに移動したいだけです。したがって、aneeshepが指摘したように、を使用する必要がありますmv ./* destdir/
。これは、mv * destdir/
シェル(Bash)*
がデフォルトで現在のディレクトリからを展開するのと同じです。
だから、私はこれを(ソースディレクトリで)次のように実行します:
mv * /etc/apache2/sites-available/