O .
W systemie UNIX / Linux .
oznacza bieżący katalog. Zobaczysz go również w ls
poleceniach:
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
Ukośniki ./
i dowiązania symboliczne
Dołączanie /
do niego ma to samo znaczenie, co dołączanie /
do dowolnej innej nazwy katalogu. Tylko upewni się, że nie operujesz na pliku. Ogólnie rzecz biorąc, to nie będzie różnicy cp
i mv
poleceń, ale widać różnicę, gdy używasz dowiązania symboliczne. Załóżmy, że ta struktura:
.
├── a
├── dir1
│ ├── b
│ └── c
├── dir2
│ └── d
└── symlink -> dir2
Następnie zwykły wpis pokaże sam link
ls -l symlink
lrwxrwxrwx 1 gert gert 4 Feb 3 12:15 symlink -> dir2
ale dołączenie /
spowoduje, że lista zejdzie do niego i wyświetli zawartość.
ls -l symlink/
total 0
-rw-rw-r-- 1 gert gert 0 Feb 3 12:15 d
Oznacza to, że podczas korzystania z operacji, to jest dobrą rzeczą, aby dołączyć /
, jeśli odnoszą się do zawartości tego czy chcesz skopiować / przenieść do niego przez dereferencji link, zamiast wymiany samego łącza.
Zobacz także: Końcowe ukośniki na symbolicznych linkach do katalogów
Wróć do przykładu
W przykładzie w twoim pytaniu naprawdę chcesz tylko przenieść zawartość katalogu do drugiego. Tak jak wskazał aneehep , powinieneś użyć mv ./* destdir/
. Jest to takie samo, jak domyślna mv * destdir/
interpretacja powłoki (Bash) *
z bieżącego katalogu.
Więc uruchomiłbym to tak (w katalogu źródłowym):
mv * /etc/apache2/sites-available/